View Javadoc
1   package org.apache.maven.plugins.assembly;
2   
3   /*
4    * Licensed to the Apache Software Foundation (ASF) under one
5    * or more contributor license agreements.  See the NOTICE file
6    * distributed with this work for additional information
7    * regarding copyright ownership.  The ASF licenses this file
8    * to you under the Apache License, Version 2.0 (the
9    * "License"); you may not use this file except in compliance
10   * with the License.  You may obtain a copy of the License at
11   *
12   *   http://www.apache.org/licenses/LICENSE-2.0
13   *
14   * Unless required by applicable law or agreed to in writing,
15   * software distributed under the License is distributed on an
16   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17   * KIND, either express or implied.  See the License for the
18   * specific language governing permissions and limitations
19   * under the License.
20   */
21  
22  import java.io.File;
23  import java.util.List;
24  import java.util.Properties;
25  
26  import javax.annotation.Nonnull;
27  
28  import org.apache.maven.archiver.MavenArchiveConfiguration;
29  import org.apache.maven.artifact.repository.ArtifactRepository;
30  import org.apache.maven.execution.MavenSession;
31  import org.apache.maven.project.MavenProject;
32  import org.apache.maven.shared.filtering.MavenReaderFilter;
33  import org.codehaus.plexus.interpolation.fixed.FixedStringSearchInterpolator;
34  
35  /**
36   *
37   */
38  public interface AssemblerConfigurationSource
39  {
40      /**
41       * @return The descriptors.
42       */
43      String[] getDescriptors();
44  
45      /**
46       * @return The descriptor references.
47       */
48      String[] getDescriptorReferences();
49  
50      /**
51       * @return The descriptor source directory.
52       */
53      File getDescriptorSourceDirectory();
54  
55      /**
56       * @return The base directory.
57       */
58      File getBasedir();
59  
60      /**
61       * @return The Maven Project.
62       */
63      MavenProject getProject();
64  
65      /**
66       * @return The site directory.
67       */
68      File getSiteDirectory();
69  
70      /**
71       * @return The final name.
72       */
73      String getFinalName();
74  
75      /**
76       * @return append the assembly id.
77       */
78      boolean isAssemblyIdAppended();
79  
80      /**
81       * @return Tar long file mode.
82       */
83      String getTarLongFileMode();
84  
85      /**
86       * @return The output directory.
87       */
88      File getOutputDirectory();
89  
90      /**
91       * @return The working directory.
92       */
93      File getWorkingDirectory();
94  
95      /**
96       * @return the jar archive configuration.
97       */
98      MavenArchiveConfiguration getJarArchiveConfiguration();
99  
100     /**
101      * @return The local repository.
102      */
103     ArtifactRepository getLocalRepository();
104 
105     /**
106      * @return The temporary root directory.
107      */
108     File getTemporaryRootDirectory();
109 
110     /**
111      * @return The archive base directory.
112      */
113     File getArchiveBaseDirectory();
114 
115     /**
116      * @return The filters.
117      */
118     List<String> getFilters();
119     
120     /**
121      * @return the additional properties
122      */
123     Properties getAdditionalProperties();
124 
125     /**
126      * @return include the project build filters or not.
127      */
128     boolean isIncludeProjectBuildFilters();
129 
130     /**
131      * @return The list of reactor projects.
132      */
133     List<MavenProject> getReactorProjects();
134 
135     /**
136      * @return The remote repositories.
137      */
138     List<ArtifactRepository> getRemoteRepositories();
139 
140     /**
141      * @return Is this a test run.
142      */
143     boolean isDryRun();
144 
145     /**
146      * @return Ignore directory format extensions.
147      */
148     boolean isIgnoreDirFormatExtensions();
149 
150     /**
151      * @return Ignore missing descriptor.
152      */
153     boolean isIgnoreMissingDescriptor();
154 
155     /**
156      * @return The maven session.
157      */
158     MavenSession getMavenSession();
159 
160     /**
161      * @return The archiver configuration.
162      */
163     String getArchiverConfig();
164 
165     /**
166      * Maven shared filtering utility.
167      *
168      * @return the maven reader filter
169      */
170     MavenReaderFilter getMavenReaderFilter();
171 
172     /**
173      * @return Update only yes/no.
174      */
175     boolean isUpdateOnly();
176 
177     /**
178      * @return Use JVM chmod yes/no.
179      */
180     boolean isUseJvmChmod();
181 
182     /**
183      * @return Ignore permissions yes/no.
184      */
185     boolean isIgnorePermissions();
186 
187     /**
188      * @return The current encoding.
189      */
190     String getEncoding();
191 
192     /**
193      * @return The escape string.
194      */
195     String getEscapeString();
196 
197     /**
198      * @return The list of delimiters.
199      */
200     List<String> getDelimiters();
201 
202     @Nonnull
203     FixedStringSearchInterpolator getRepositoryInterpolator();
204 
205     /**
206      * Gets an interpolator from environment variables and stuff
207      */
208     @Nonnull
209     FixedStringSearchInterpolator getCommandLinePropsInterpolator();
210 
211     /**
212      * Gets an interpolator from environment variables and stuff
213      */
214     @Nonnull
215     FixedStringSearchInterpolator getEnvInterpolator();
216 
217     @Nonnull
218     FixedStringSearchInterpolator getMainProjectInterpolator();
219 
220     /**
221      * @return Override UID.
222      */
223     Integer getOverrideUid();
224 
225     /**
226      * @return Override user name.
227      */
228     String getOverrideUserName();
229 
230     /**
231      * @return Override GID.
232      */
233     Integer getOverrideGid();
234 
235     /**
236      * @return Override group name.
237      */
238     String getOverrideGroupName();
239 }