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