You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ma...@apache.org on 2007/09/14 18:08:08 UTC
svn commit: r575736 -
/maven/shared/trunk/maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysis.java
Author: markh
Date: Fri Sep 14 09:08:07 2007
New Revision: 575736
URL: http://svn.apache.org/viewvc?rev=575736&view=rev
Log:
o Implemented hashCode, equals and toString
o Added convenience default constructor
o Better set handling
Modified:
maven/shared/trunk/maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysis.java
Modified: maven/shared/trunk/maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysis.java
URL: http://svn.apache.org/viewvc/maven/shared/trunk/maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysis.java?rev=575736&r1=575735&r2=575736&view=diff
==============================================================================
--- maven/shared/trunk/maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysis.java (original)
+++ maven/shared/trunk/maven-dependency-analyzer/src/main/java/org/apache/maven/shared/dependency/analyzer/ProjectDependencyAnalysis.java Fri Sep 14 09:08:07 2007
@@ -19,6 +19,8 @@
* under the License.
*/
+import java.util.Collections;
+import java.util.HashSet;
import java.util.Set;
/**
@@ -38,13 +40,18 @@
private final Set unusedDeclaredArtifacts;
// constructors -----------------------------------------------------------
+
+ public ProjectDependencyAnalysis()
+ {
+ this( null, null, null );
+ }
public ProjectDependencyAnalysis( Set usedDeclaredArtifacts, Set usedUndeclaredArtifacts,
Set unusedDeclaredArtifacts )
{
- this.usedDeclaredArtifacts = usedDeclaredArtifacts;
- this.usedUndeclaredArtifacts = usedUndeclaredArtifacts;
- this.unusedDeclaredArtifacts = unusedDeclaredArtifacts;
+ this.usedDeclaredArtifacts = safeCopy(usedDeclaredArtifacts);
+ this.usedUndeclaredArtifacts = safeCopy(usedUndeclaredArtifacts);
+ this.unusedDeclaredArtifacts = safeCopy(unusedDeclaredArtifacts);
}
// public methods ---------------------------------------------------------
@@ -62,5 +69,89 @@
public Set getUnusedDeclaredArtifacts()
{
return unusedDeclaredArtifacts;
+ }
+
+ // Object methods ---------------------------------------------------------
+
+ /*
+ * @see java.lang.Object#hashCode()
+ */
+ public int hashCode()
+ {
+ int hashCode = getUsedDeclaredArtifacts().hashCode();
+ hashCode = (hashCode * 37) + getUsedUndeclaredArtifacts().hashCode();
+ hashCode = (hashCode * 37) + getUnusedDeclaredArtifacts().hashCode();
+
+ return hashCode;
+ }
+
+ /*
+ * @see java.lang.Object#equals(java.lang.Object)
+ */
+ public boolean equals( Object object )
+ {
+ boolean equals;
+
+ if ( object instanceof ProjectDependencyAnalysis )
+ {
+ ProjectDependencyAnalysis analysis = (ProjectDependencyAnalysis) object;
+
+ equals = getUsedDeclaredArtifacts().equals( analysis.getUsedDeclaredArtifacts() )
+ && getUsedUndeclaredArtifacts().equals( analysis.getUsedUndeclaredArtifacts() )
+ && getUnusedDeclaredArtifacts().equals( analysis.getUnusedDeclaredArtifacts() );
+ }
+ else
+ {
+ equals = false;
+ }
+
+ return equals;
+ }
+
+ /*
+ * @see java.lang.Object#toString()
+ */
+ public String toString()
+ {
+ StringBuffer buffer = new StringBuffer();
+
+ if ( !getUsedDeclaredArtifacts().isEmpty() )
+ {
+ buffer.append( "usedDeclaredArtifacts=" ).append( getUsedDeclaredArtifacts() );
+ }
+
+ if ( !getUsedUndeclaredArtifacts().isEmpty() )
+ {
+ if ( buffer.length() > 0)
+ {
+ buffer.append( "," );
+ }
+
+ buffer.append( "usedUndeclaredArtifacts=" ).append( getUsedUndeclaredArtifacts() );
+ }
+
+ if ( !getUnusedDeclaredArtifacts().isEmpty() )
+ {
+ if ( buffer.length() > 0)
+ {
+ buffer.append( "," );
+ }
+
+ buffer.append( "unusedDeclaredArtifacts=" ).append( getUnusedDeclaredArtifacts() );
+ }
+
+ buffer.insert( 0, "[" );
+ buffer.insert( 0, getClass().getName() );
+
+ buffer.append( "]" );
+
+ return buffer.toString();
+ }
+
+ // private methods --------------------------------------------------------
+
+ private Set safeCopy( Set set )
+ {
+ return ( set == null ) ? Collections.EMPTY_SET : Collections.unmodifiableSet( new HashSet( set ) );
}
}