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 org.apache.maven.archiver.MavenArchiveConfiguration;
27 import org.apache.maven.artifact.repository.ArtifactRepository;
28 import org.apache.maven.execution.MavenSession;
29 import org.apache.maven.project.MavenProject;
30 import org.apache.maven.shared.filtering.MavenReaderFilter;
31 import org.codehaus.plexus.interpolation.fixed.FixedStringSearchInterpolator;
32
33 /**
34 *
35 */
36 public interface AssemblerConfigurationSource
37 {
38 /**
39 * @return The descriptors.
40 */
41 String[] getDescriptors();
42
43 /**
44 * @return The descriptor references.
45 */
46 String[] getDescriptorReferences();
47
48 /**
49 * @return The descriptor source directory.
50 */
51 File getDescriptorSourceDirectory();
52
53 /**
54 * @return The base directory.
55 */
56 File getBasedir();
57
58 /**
59 * @return The Maven Project.
60 */
61 MavenProject getProject();
62
63 /**
64 * @return The site directory.
65 */
66 File getSiteDirectory();
67
68 /**
69 * @return The final name.
70 */
71 String getFinalName();
72
73 /**
74 * @return append the assembly id.
75 */
76 boolean isAssemblyIdAppended();
77
78 /**
79 * @return Tar long file mode.
80 */
81 String getTarLongFileMode();
82
83 /**
84 * @return The output directory.
85 */
86 File getOutputDirectory();
87
88 /**
89 * @return The working directory.
90 */
91 File getWorkingDirectory();
92
93 /**
94 * @return the jar archive configuration.
95 */
96 MavenArchiveConfiguration getJarArchiveConfiguration();
97
98 /**
99 * @return The local repository.
100 */
101 ArtifactRepository getLocalRepository();
102
103 /**
104 * @return The temporary root directory.
105 */
106 File getTemporaryRootDirectory();
107
108 /**
109 * @return The archive base directory.
110 */
111 File getArchiveBaseDirectory();
112
113 /**
114 * @return The filters.
115 */
116 List<String> getFilters();
117
118 /**
119 * @return the additional properties
120 */
121 Properties getAdditionalProperties();
122
123 /**
124 * @return include the project build filters or not.
125 */
126 boolean isIncludeProjectBuildFilters();
127
128 /**
129 * @return The list of reactor projects.
130 */
131 List<MavenProject> getReactorProjects();
132
133 /**
134 * @return The remote repositories.
135 */
136 List<ArtifactRepository> getRemoteRepositories();
137
138 /**
139 * @return Is this a test run.
140 */
141 boolean isDryRun();
142
143 /**
144 * @return Ignore directory format extensions.
145 */
146 boolean isIgnoreDirFormatExtensions();
147
148 /**
149 * @return Ignore missing descriptor.
150 */
151 boolean isIgnoreMissingDescriptor();
152
153 /**
154 * @return The maven session.
155 */
156 MavenSession getMavenSession();
157
158 /**
159 * @return The archiver configuration.
160 */
161 String getArchiverConfig();
162
163 /**
164 * Maven shared filtering utility.
165 *
166 * @return the maven reader filter
167 */
168 MavenReaderFilter getMavenReaderFilter();
169
170 /**
171 * @return Update only yes/no.
172 */
173 boolean isUpdateOnly();
174
175 /**
176 * @return Use JVM chmod yes/no.
177 */
178 boolean isUseJvmChmod();
179
180 /**
181 * @return Ignore permissions yes/no.
182 */
183 boolean isIgnorePermissions();
184
185 /**
186 * @return The current encoding.
187 */
188 String getEncoding();
189
190 /**
191 * @return The escape string.
192 */
193 String getEscapeString();
194
195 /**
196 * @return The list of delimiters.
197 */
198 List<String> getDelimiters();
199
200 FixedStringSearchInterpolator getRepositoryInterpolator();
201
202 /**
203 * Gets an interpolator from environment variables and stuff
204 */
205 FixedStringSearchInterpolator getCommandLinePropsInterpolator();
206
207 /**
208 * Gets an interpolator from environment variables and stuff
209 */
210 FixedStringSearchInterpolator getEnvInterpolator();
211
212 FixedStringSearchInterpolator getMainProjectInterpolator();
213
214 /**
215 * @return Override UID.
216 */
217 Integer getOverrideUid();
218
219 /**
220 * @return Override user name.
221 */
222 String getOverrideUserName();
223
224 /**
225 * @return Override GID.
226 */
227 Integer getOverrideGid();
228
229 /**
230 * @return Override group name.
231 */
232 String getOverrideGroupName();
233 }