1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.plugins.dependency.fromConfiguration;
20
21 import java.io.File;
22 import java.util.Objects;
23
24 import org.apache.maven.artifact.Artifact;
25 import org.apache.maven.artifact.ArtifactUtils;
26 import org.apache.maven.plugins.annotations.Parameter;
27 import org.apache.maven.plugins.dependency.utils.DependencyUtil;
28 import org.apache.maven.shared.transfer.dependencies.DependableCoordinate;
29 import org.codehaus.plexus.components.io.filemappers.FileMapper;
30
31
32
33
34
35
36
37 public class ArtifactItem implements DependableCoordinate {
38
39
40
41 @Parameter(required = true)
42 private String groupId;
43
44
45
46
47 @Parameter(required = true)
48 private String artifactId;
49
50
51
52
53 @Parameter
54 private String version = null;
55
56
57
58
59 @Parameter(required = true)
60 private String type = "jar";
61
62
63
64
65 @Parameter
66 private String classifier;
67
68
69
70
71 @Parameter
72 private File outputDirectory;
73
74
75
76
77 @Parameter
78 private String destFileName;
79
80
81
82
83 private String overWrite;
84
85
86
87
88 @Parameter
89 private String encoding;
90
91 private boolean needsProcessing;
92
93
94
95
96 private Artifact artifact;
97
98
99
100
101 private String includes;
102
103
104
105
106 private String excludes;
107
108
109
110
111
112
113 @Parameter
114 private FileMapper[] fileMappers;
115
116
117
118
119 public ArtifactItem() {
120
121 }
122
123
124
125
126 public ArtifactItem(Artifact artifact) {
127 this.setArtifact(artifact);
128 this.setArtifactId(artifact.getArtifactId());
129 this.setClassifier(artifact.getClassifier());
130 this.setGroupId(artifact.getGroupId());
131 this.setType(artifact.getType());
132 this.setVersion(artifact.getVersion());
133 }
134
135 private String filterEmptyString(String in) {
136 if ("".equals(in)) {
137 return null;
138 }
139 return in;
140 }
141
142
143
144
145 @Override
146 public String getArtifactId() {
147 return artifactId;
148 }
149
150
151
152
153 public void setArtifactId(String theArtifact) {
154 this.artifactId = filterEmptyString(theArtifact);
155 }
156
157
158
159
160 @Override
161 public String getGroupId() {
162 return groupId;
163 }
164
165
166
167
168 public void setGroupId(String groupId) {
169 this.groupId = filterEmptyString(groupId);
170 }
171
172
173
174
175 @Override
176 public String getType() {
177 return type;
178 }
179
180
181
182
183 public void setType(String type) {
184 this.type = filterEmptyString(type);
185 }
186
187
188
189
190 @Override
191 public String getVersion() {
192 return version;
193 }
194
195
196
197
198 public void setVersion(String version) {
199 this.version = filterEmptyString(version);
200 }
201
202
203
204
205 public String getBaseVersion() {
206 return ArtifactUtils.toSnapshotVersion(version);
207 }
208
209
210
211
212 @Override
213 public String getClassifier() {
214 return classifier;
215 }
216
217
218
219
220 public void setClassifier(String classifier) {
221 this.classifier = filterEmptyString(classifier);
222 }
223
224 @Override
225 public String toString() {
226 if (this.classifier == null) {
227 return groupId + ":" + artifactId + ":" + Objects.toString(version, "?") + ":" + type;
228 } else {
229 return groupId + ":" + artifactId + ":" + classifier + ":" + Objects.toString(version, "?") + ":" + type;
230 }
231 }
232
233
234
235
236 public File getOutputDirectory() {
237 return outputDirectory;
238 }
239
240
241
242
243 public void setOutputDirectory(File outputDirectory) {
244 this.outputDirectory = outputDirectory;
245 }
246
247
248
249
250 public String getDestFileName() {
251 return destFileName;
252 }
253
254
255
256
257 public void setDestFileName(String destFileName) {
258 this.destFileName = filterEmptyString(destFileName);
259 }
260
261
262
263
264 public boolean isNeedsProcessing() {
265 return this.needsProcessing;
266 }
267
268
269
270
271 public void setNeedsProcessing(boolean needsProcessing) {
272 this.needsProcessing = needsProcessing;
273 }
274
275
276
277
278 public String getOverWrite() {
279 return this.overWrite;
280 }
281
282
283
284
285 public void setOverWrite(String overWrite) {
286 this.overWrite = overWrite;
287 }
288
289
290
291
292
293 public String getEncoding() {
294 return this.encoding;
295 }
296
297
298
299
300
301 public void setEncoding(String encoding) {
302 this.encoding = encoding;
303 }
304
305
306
307
308 public Artifact getArtifact() {
309 return this.artifact;
310 }
311
312
313
314
315 public void setArtifact(Artifact artifact) {
316 this.artifact = artifact;
317 }
318
319
320
321
322 public String getExcludes() {
323 return DependencyUtil.cleanToBeTokenizedString(this.excludes);
324 }
325
326
327
328
329 public void setExcludes(String excludes) {
330 this.excludes = excludes;
331 }
332
333
334
335
336 public String getIncludes() {
337 return DependencyUtil.cleanToBeTokenizedString(this.includes);
338 }
339
340
341
342
343 public void setIncludes(String includes) {
344 this.includes = includes;
345 }
346
347
348
349
350
351
352 public FileMapper[] getFileMappers() {
353 return this.fileMappers;
354 }
355
356
357
358
359
360
361 public void setFileMappers(FileMapper[] fileMappers) {
362 this.fileMappers = fileMappers;
363 }
364 }