1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.eclipse.aether.util.graph.traverser;
20
21 import org.eclipse.aether.artifact.ArtifactProperties;
22 import org.eclipse.aether.collection.DependencyCollectionContext;
23 import org.eclipse.aether.collection.DependencyTraverser;
24 import org.eclipse.aether.graph.Dependency;
25
26 import static java.util.Objects.requireNonNull;
27
28
29
30
31
32
33
34
35 public final class FatArtifactTraverser implements DependencyTraverser {
36
37
38
39
40 public FatArtifactTraverser() {}
41
42 public boolean traverseDependency(Dependency dependency) {
43 requireNonNull(dependency, "dependency cannot be null");
44 String prop = dependency.getArtifact().getProperty(ArtifactProperties.INCLUDES_DEPENDENCIES, "");
45 return !Boolean.parseBoolean(prop);
46 }
47
48 public DependencyTraverser deriveChildTraverser(DependencyCollectionContext context) {
49 requireNonNull(context, "context cannot be null");
50 return this;
51 }
52
53 @Override
54 public boolean equals(Object obj) {
55 if (this == obj) {
56 return true;
57 } else if (null == obj || !getClass().equals(obj.getClass())) {
58 return false;
59 }
60 return true;
61 }
62
63 @Override
64 public int hashCode() {
65 return getClass().hashCode();
66 }
67 }