1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.artifact.resolver;
20
21 import java.util.ArrayList;
22 import java.util.List;
23 import java.util.Map;
24 import java.util.Set;
25
26 import org.apache.maven.artifact.Artifact;
27 import org.apache.maven.artifact.repository.ArtifactRepository;
28 import org.apache.maven.artifact.repository.RepositoryCache;
29 import org.apache.maven.artifact.repository.RepositoryRequest;
30 import org.apache.maven.artifact.resolver.filter.ArtifactFilter;
31 import org.apache.maven.settings.Mirror;
32 import org.apache.maven.settings.Proxy;
33 import org.apache.maven.settings.Server;
34
35
36
37
38
39
40
41 public class ArtifactResolutionRequest implements RepositoryRequest {
42
43 private Artifact artifact;
44
45
46
47
48 private Set<Artifact> artifactDependencies;
49
50 private ArtifactRepository localRepository;
51
52 private List<ArtifactRepository> remoteRepositories;
53
54 private ArtifactFilter collectionFilter;
55
56 private ArtifactFilter resolutionFilter;
57
58
59 private List<ResolutionListener> listeners = new ArrayList<>();
60
61
62 private Map<String, Artifact> managedVersionMap;
63
64 private boolean resolveRoot = true;
65
66 private boolean resolveTransitively = false;
67
68 private boolean offline;
69
70 private boolean forceUpdate;
71
72 private List<Server> servers;
73
74 private List<Mirror> mirrors;
75
76 private List<Proxy> proxies;
77
78 public ArtifactResolutionRequest() {
79
80 }
81
82 public ArtifactResolutionRequest(RepositoryRequest request) {
83 setLocalRepository(request.getLocalRepository());
84 setRemoteRepositories(request.getRemoteRepositories());
85 setOffline(request.isOffline());
86 setForceUpdate(request.isForceUpdate());
87 }
88
89 public Artifact getArtifact() {
90 return artifact;
91 }
92
93 public ArtifactResolutionRequest setArtifact(Artifact artifact) {
94 this.artifact = artifact;
95
96 return this;
97 }
98
99 public ArtifactResolutionRequest setArtifactDependencies(Set<Artifact> artifactDependencies) {
100 this.artifactDependencies = artifactDependencies;
101
102 return this;
103 }
104
105 public Set<Artifact> getArtifactDependencies() {
106 return artifactDependencies;
107 }
108
109 public ArtifactRepository getLocalRepository() {
110 return localRepository;
111 }
112
113 public ArtifactResolutionRequest setLocalRepository(ArtifactRepository localRepository) {
114 this.localRepository = localRepository;
115
116 return this;
117 }
118
119 public List<ArtifactRepository> getRemoteRepositories() {
120 return remoteRepositories;
121 }
122
123 public ArtifactResolutionRequest setRemoteRepositories(List<ArtifactRepository> remoteRepositories) {
124 this.remoteRepositories = remoteRepositories;
125
126 return this;
127 }
128
129
130
131
132
133
134
135 public ArtifactFilter getCollectionFilter() {
136 return collectionFilter;
137 }
138
139 public ArtifactResolutionRequest setCollectionFilter(ArtifactFilter filter) {
140 this.collectionFilter = filter;
141
142 return this;
143 }
144
145
146
147
148
149
150
151
152 public ArtifactFilter getResolutionFilter() {
153 return resolutionFilter;
154 }
155
156 public ArtifactResolutionRequest setResolutionFilter(ArtifactFilter filter) {
157 this.resolutionFilter = filter;
158
159 return this;
160 }
161
162 public List<ResolutionListener> getListeners() {
163 return listeners;
164 }
165
166 public ArtifactResolutionRequest setListeners(List<ResolutionListener> listeners) {
167 this.listeners = listeners;
168
169 return this;
170 }
171
172 public ArtifactResolutionRequest addListener(ResolutionListener listener) {
173 listeners.add(listener);
174
175 return this;
176 }
177
178 public Map<String, Artifact> getManagedVersionMap() {
179 return managedVersionMap;
180 }
181
182 public ArtifactResolutionRequest setManagedVersionMap(Map<String, Artifact> managedVersionMap) {
183 this.managedVersionMap = managedVersionMap;
184
185 return this;
186 }
187
188 public ArtifactResolutionRequest setResolveRoot(boolean resolveRoot) {
189 this.resolveRoot = resolveRoot;
190
191 return this;
192 }
193
194 public boolean isResolveRoot() {
195 return resolveRoot;
196 }
197
198 public ArtifactResolutionRequest setResolveTransitively(boolean resolveDependencies) {
199 this.resolveTransitively = resolveDependencies;
200
201 return this;
202 }
203
204 public boolean isResolveTransitively() {
205 return resolveTransitively;
206 }
207
208 public String toString() {
209 StringBuilder sb = new StringBuilder()
210 .append("REQUEST: ")
211 .append("\n")
212 .append("artifact: ")
213 .append(artifact)
214 .append("\n")
215 .append(artifactDependencies)
216 .append("\n")
217 .append("localRepository: ")
218 .append(localRepository)
219 .append("\n")
220 .append("remoteRepositories: ")
221 .append(remoteRepositories)
222 .append("\n");
223
224 return sb.toString();
225 }
226
227 public boolean isOffline() {
228 return offline;
229 }
230
231 public ArtifactResolutionRequest setOffline(boolean offline) {
232 this.offline = offline;
233
234 return this;
235 }
236
237 public boolean isForceUpdate() {
238 return forceUpdate;
239 }
240
241 public ArtifactResolutionRequest setForceUpdate(boolean forceUpdate) {
242 this.forceUpdate = forceUpdate;
243
244 return this;
245 }
246
247 public ArtifactResolutionRequest setServers(List<Server> servers) {
248 this.servers = servers;
249
250 return this;
251 }
252
253 public List<Server> getServers() {
254 if (servers == null) {
255 servers = new ArrayList<>();
256 }
257
258 return servers;
259 }
260
261 public ArtifactResolutionRequest setMirrors(List<Mirror> mirrors) {
262 this.mirrors = mirrors;
263
264 return this;
265 }
266
267 public List<Mirror> getMirrors() {
268 if (mirrors == null) {
269 mirrors = new ArrayList<>();
270 }
271
272 return mirrors;
273 }
274
275 public ArtifactResolutionRequest setProxies(List<Proxy> proxies) {
276 this.proxies = proxies;
277
278 return this;
279 }
280
281 public List<Proxy> getProxies() {
282 if (proxies == null) {
283 proxies = new ArrayList<>();
284 }
285
286 return proxies;
287 }
288
289
290
291
292
293 public ArtifactResolutionRequest setCache(RepositoryCache cache) {
294 return this;
295 }
296 }