1 package org.apache.maven.plugin.assembly.artifact;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.maven.artifact.Artifact;
23 import org.apache.maven.project.MavenProject;
24 import org.apache.maven.shared.artifact.filter.ScopeArtifactFilter;
25
26 import java.util.LinkedHashSet;
27 import java.util.Set;
28
29
30
31
32
33
34
35 class ResolutionManagementInfo
36 {
37 private boolean resolutionRequired;
38
39 private final ScopeArtifactFilter scopeFilter = new ScopeArtifactFilter();
40
41 private boolean resolvedTransitively;
42
43 private final Set<MavenProject> enabledProjects = new LinkedHashSet<MavenProject>();
44
45 private final Set<Artifact> artifacts = new LinkedHashSet<Artifact>();
46
47 ResolutionManagementInfo( final MavenProject currentProject )
48 {
49 enabledProjects.add( currentProject );
50 }
51
52 boolean isResolutionRequired()
53 {
54 return resolutionRequired;
55 }
56
57 void setResolutionRequired( final boolean resolutionRequired )
58 {
59 this.resolutionRequired = resolutionRequired;
60 }
61
62 boolean isResolvedTransitively()
63 {
64 return resolvedTransitively;
65 }
66
67 void setResolvedTransitively( final boolean resolvedTransitively )
68 {
69 this.resolvedTransitively = this.resolvedTransitively || resolvedTransitively;
70 }
71
72 ScopeArtifactFilter getScopeFilter()
73 {
74 return scopeFilter;
75 }
76
77 void enableCompileScope()
78 {
79 scopeFilter.setIncludeCompileScope( true );
80 scopeFilter.setIncludeProvidedScope( true );
81 scopeFilter.setIncludeSystemScope( true );
82 }
83
84 void enableProvidedScope()
85 {
86 scopeFilter.setIncludeProvidedScope( true );
87 }
88
89 void enableRuntimeScope()
90 {
91 scopeFilter.setIncludeRuntimeScope( true );
92 scopeFilter.setIncludeCompileScope( true );
93 }
94
95 void enableTestScope()
96 {
97 scopeFilter.setIncludeTestScope( true );
98 scopeFilter.setIncludeCompileScope( true );
99 scopeFilter.setIncludeProvidedScope( true );
100 scopeFilter.setIncludeSystemScope( true );
101 scopeFilter.setIncludeRuntimeScope( true );
102 }
103
104 void enableSystemScope()
105 {
106 scopeFilter.setIncludeSystemScope( true );
107 }
108
109 void enableProjectResolution( final MavenProject project )
110 {
111 if ( !enabledProjects.contains( project ) )
112 {
113 enabledProjects.add( project );
114 }
115 }
116
117 Set<MavenProject> getEnabledProjects()
118 {
119 return enabledProjects;
120 }
121
122 Set<Artifact> getArtifacts()
123 {
124 return artifacts;
125 }
126
127 void addArtifacts( final Set<Artifact> a )
128 {
129 artifacts.addAll( a );
130 }
131
132 void addArtifact( final Artifact a )
133 {
134 artifacts.add( a );
135 }
136 }