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