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.artifact.repository.ArtifactRepository;
27 import org.apache.maven.execution.MavenSession;
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 *
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 The descriptor source directory.
48 */
49 File getDescriptorSourceDirectory();
50
51 /**
52 * @return The base directory.
53 */
54 File getBasedir();
55
56 /**
57 * @return The Maven Project.
58 */
59 MavenProject getProject();
60
61 /**
62 * @return The site directory.
63 */
64 File getSiteDirectory();
65
66 /**
67 * @return The final name.
68 */
69 String getFinalName();
70
71 /**
72 * @return append the assembly id.
73 */
74 boolean isAssemblyIdAppended();
75
76 /**
77 * @return Tar long file mode.
78 */
79 String getTarLongFileMode();
80
81 /**
82 * @return The output directory.
83 */
84 File getOutputDirectory();
85
86 /**
87 * @return The working directory.
88 */
89 File getWorkingDirectory();
90
91 /**
92 * @return the jar archive configuration.
93 */
94 MavenArchiveConfiguration getJarArchiveConfiguration();
95
96 /**
97 * @return The temporary root directory.
98 */
99 File getTemporaryRootDirectory();
100
101 /**
102 * @return The archive base directory.
103 */
104 File getArchiveBaseDirectory();
105
106 /**
107 * @return The filters.
108 */
109 List<String> getFilters();
110
111 /**
112 * @return the additional properties
113 */
114 Properties getAdditionalProperties();
115
116 /**
117 * @return include the project build filters or not.
118 */
119 boolean isIncludeProjectBuildFilters();
120
121 /**
122 * @return The list of reactor projects.
123 */
124 List<MavenProject> getReactorProjects();
125
126 /**
127 * @return The remote repositories.
128 */
129 List<ArtifactRepository> getRemoteRepositories();
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 Use JVM chmod yes/no.
170 */
171 boolean isUseJvmChmod();
172
173 /**
174 * @return Ignore permissions yes/no.
175 */
176 boolean isIgnorePermissions();
177
178 /**
179 * @return The current encoding.
180 */
181 String getEncoding();
182
183 /**
184 * @return The escape string.
185 */
186 String getEscapeString();
187
188 /**
189 * @return The list of delimiters.
190 */
191 List<String> getDelimiters();
192
193 FixedStringSearchInterpolator getRepositoryInterpolator();
194
195 /**
196 * Gets an interpolator from environment variables and stuff
197 */
198 FixedStringSearchInterpolator getCommandLinePropsInterpolator();
199
200 /**
201 * Gets an interpolator from environment variables and stuff
202 */
203 FixedStringSearchInterpolator getEnvInterpolator();
204
205 FixedStringSearchInterpolator getMainProjectInterpolator();
206
207 /**
208 * @return Override UID.
209 */
210 Integer getOverrideUid();
211
212 /**
213 * @return Override user name.
214 */
215 String getOverrideUserName();
216
217 /**
218 * @return Override GID.
219 */
220 Integer getOverrideGid();
221
222 /**
223 * @return Override group name.
224 */
225 String getOverrideGroupName();
226 }