1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.internal.impl;
20
21 import java.util.Collection;
22
23 import org.apache.maven.api.DependencyCoordinates;
24 import org.apache.maven.api.Exclusion;
25 import org.apache.maven.api.VersionConstraint;
26 import org.apache.maven.api.annotations.Nonnull;
27 import org.apache.maven.api.annotations.Nullable;
28
29 public class DefaultDependencyCoordinates extends AetherDependencyWrapper implements DependencyCoordinates {
30 public DefaultDependencyCoordinates(
31 @Nonnull InternalSession session, @Nonnull org.eclipse.aether.graph.Dependency dependency) {
32 super(session, dependency);
33 }
34
35 @Override
36 public VersionConstraint getVersionConstraint() {
37 return session.parseVersionConstraint(dependency.getArtifact().getVersion());
38 }
39
40 @Nullable
41 @Override
42 public Boolean getOptional() {
43 return dependency.getOptional();
44 }
45
46 @Nonnull
47 @Override
48 public Collection<Exclusion> getExclusions() {
49 return new MappedCollection<>(dependency.getExclusions(), this::toExclusion);
50 }
51
52 private Exclusion toExclusion(org.eclipse.aether.graph.Exclusion exclusion) {
53 return new Exclusion() {
54 @Nullable
55 @Override
56 public String getGroupId() {
57 return exclusion.getGroupId();
58 }
59
60 @Nullable
61 @Override
62 public String getArtifactId() {
63 return exclusion.getArtifactId();
64 }
65 };
66 }
67 }