1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.maven.model.building;
20
21 import java.io.File;
22 import java.util.Objects;
23 import org.apache.maven.building.FileSource;
24
25
26
27
28
29
30
31 public class ArtifactModelSource extends FileSource implements ModelSource {
32 private final String groupId;
33
34 private final String artifactId;
35
36 private final String version;
37
38 private final int hashCode;
39
40 public ArtifactModelSource(File file, String groupId, String artifactId, String version) {
41 super(file);
42 this.groupId = groupId;
43 this.artifactId = artifactId;
44 this.version = version;
45 this.hashCode = Objects.hash(groupId, artifactId, version);
46 }
47
48 public String getGroupId() {
49 return groupId;
50 }
51
52 public String getArtifactId() {
53 return artifactId;
54 }
55
56 public String getVersion() {
57 return version;
58 }
59
60 @Override
61 public int hashCode() {
62 return hashCode;
63 }
64
65 @Override
66 public boolean equals(Object obj) {
67 if (this == obj) {
68 return true;
69 }
70 if (obj == null) {
71 return false;
72 }
73
74 if (!ArtifactModelSource.class.equals(obj.getClass())) {
75 return false;
76 }
77
78 ArtifactModelSource other = (ArtifactModelSource) obj;
79 return Objects.equals(artifactId, other.artifactId)
80 && Objects.equals(groupId, other.groupId)
81 && Objects.equals(version, other.version);
82 }
83 }