You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by rf...@apache.org on 2020/06/29 18:35:45 UTC
[maven] 01/01: [MNG-6948] Repository files should not pass
build-filters
This is an automated email from the ASF dual-hosted git repository.
rfscholte pushed a commit to branch MNG-6948
in repository https://gitbox.apache.org/repos/asf/maven.git
commit 65ec04c2363b16d08b760fe7e494b56b347bffee
Author: rfscholte <rf...@apache.org>
AuthorDate: Mon Jun 29 20:35:31 2020 +0200
[MNG-6948] Repository files should not pass build-filters
---
.../maven/model/building/ArtifactModelSource.java | 38 +++++++++++++++++++++-
1 file changed, 37 insertions(+), 1 deletion(-)
diff --git a/maven-model-builder/src/main/java/org/apache/maven/model/building/ArtifactModelSource.java b/maven-model-builder/src/main/java/org/apache/maven/model/building/ArtifactModelSource.java
index c3f01c2..f87d41a 100644
--- a/maven-model-builder/src/main/java/org/apache/maven/model/building/ArtifactModelSource.java
+++ b/maven-model-builder/src/main/java/org/apache/maven/model/building/ArtifactModelSource.java
@@ -20,19 +20,25 @@ package org.apache.maven.model.building;
*/
import java.io.File;
+import java.util.Objects;
+
+import org.apache.maven.building.FileSource;
/**
+ * Represents a model pulled from a repository
*
* @author Robert Scholte
* @since 3.7.0
*/
-public class ArtifactModelSource extends FileModelSource
+public class ArtifactModelSource extends FileSource implements ModelSource
{
private final String groupId;
private final String artifactId;
private final String version;
+
+ private final int hashCode;
public ArtifactModelSource( File file, String groupId, String artifactId, String version )
{
@@ -40,6 +46,7 @@ public class ArtifactModelSource extends FileModelSource
this.groupId = groupId;
this.artifactId = artifactId;
this.version = version;
+ this.hashCode = Objects.hash( groupId, artifactId, version );
}
public String getGroupId()
@@ -56,4 +63,33 @@ public class ArtifactModelSource extends FileModelSource
{
return version;
}
+
+ @Override
+ public int hashCode()
+ {
+ return hashCode;
+ }
+
+ @Override
+ public boolean equals( Object obj )
+ {
+ if ( this == obj )
+ {
+ return true;
+ }
+ if ( obj == null )
+ {
+ return false;
+ }
+
+ if ( !ArtifactModelSource.class.equals( obj.getClass() ) )
+ {
+ return false;
+ }
+
+ ArtifactModelSource other = (ArtifactModelSource) obj;
+ return Objects.equals( artifactId, other.artifactId )
+ && Objects.equals( groupId, other.groupId )
+ && Objects.equals( version, other.version );
+ }
}