1 package org.codehaus.mojo.webstart.dependency.filenaming;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.commons.lang.StringUtils;
23 import org.apache.maven.artifact.Artifact;
24 import org.codehaus.plexus.component.annotations.Component;
25
26
27
28
29
30
31
32
33
34
35
36
37 @Component(role = DependencyFilenameStrategy.class, hint = FullDependencyFilenameStrategy.ROLE_HINT)
38 public class FullDependencyFilenameStrategy
39 extends AbstractDependencyFilenameStrategy
40 implements DependencyFilenameStrategy
41 {
42
43 public static final String ROLE_HINT = "full";
44
45
46
47
48 public String getDependencyFileBasename( Artifact artifact, Boolean outputJarVersion, Boolean useUniqueVersions )
49 {
50 String filename = artifact.getGroupId() + "-" + artifact.getArtifactId();
51
52 if ( outputJarVersion != null )
53 {
54
55 if ( outputJarVersion )
56 {
57 filename += "__V";
58 }
59 else
60 {
61 filename += "-";
62 }
63
64 if (useUniqueVersions != null && useUniqueVersions.booleanValue())
65 {
66 filename += artifact.getBaseVersion();
67 }
68 else {
69 filename += artifact.getVersion();
70 }
71 }
72
73 if ( StringUtils.isNotEmpty( artifact.getClassifier() ) )
74 {
75 filename += "-" + artifact.getClassifier();
76 }
77 return filename;
78 }
79 }