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 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.html 1000516 2016-11-05 01:04:48Z olamy $
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 direcotoy.
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 direcotory.
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 include the project build filters or not.
120 */
121 boolean isIncludeProjectBuildFilters();
122
123 /**
124 * @return The list of reactor projects.
125 */
126 List<MavenProject> getReactorProjects();
127
128 /**
129 * @return The remote repositories.
130 */
131 List<ArtifactRepository> getRemoteRepositories();
132
133 /**
134 * @return Is this a test run.
135 */
136 boolean isDryRun();
137
138 /**
139 * @return Ignore directory format extensions.
140 */
141 boolean isIgnoreDirFormatExtensions();
142
143 /**
144 * @return Ignore missing descriptor.
145 */
146 boolean isIgnoreMissingDescriptor();
147
148 /**
149 * @return The maven session.
150 */
151 MavenSession getMavenSession();
152
153 /**
154 * @return The archiver configu.
155 */
156 String getArchiverConfig();
157
158 /**
159 * Maven shared filtering utility.
160 *
161 * @ return the maven reader filter
162 */
163 MavenReaderFilter getMavenReaderFilter();
164
165 /**
166 * @return Update only yes/no.
167 */
168 boolean isUpdateOnly();
169
170 /**
171 * @return Use JVM chmod yes/no.
172 */
173 boolean isUseJvmChmod();
174
175 /**
176 * @return Ignore permissions yes/no.
177 */
178 boolean isIgnorePermissions();
179
180 /**
181 * @return The current encoding.
182 */
183 String getEncoding();
184
185 /**
186 * @return The escape string.
187 */
188 String getEscapeString();
189
190 /**
191 * @return The list of delimiters.
192 */
193 List<String> getDelimiters();
194
195 @Nonnull
196 FixedStringSearchInterpolator getRepositoryInterpolator();
197
198 /**
199 * Gets an interpolator from environment variables and stuff
200 */
201 @Nonnull
202 FixedStringSearchInterpolator getCommandLinePropsInterpolator();
203
204 /**
205 * Gets an interpolator from environment variables and stuff
206 */
207 @Nonnull
208 FixedStringSearchInterpolator getEnvInterpolator();
209
210 @Nonnull
211 FixedStringSearchInterpolator getMainProjectInterpolator();
212 }