Class ProjectDependencyAnalysis


  • public class ProjectDependencyAnalysis
    extends java.lang.Object
    Project dependencies analysis result.
    Author:
    Mark Hobson
    • Constructor Summary

      Constructors 
      Constructor Description
      ProjectDependencyAnalysis()
      Constructor for ProjectDependencyAnalysis.
      ProjectDependencyAnalysis​(java.util.Set<org.apache.maven.artifact.Artifact> usedDeclaredArtifacts, java.util.Map<org.apache.maven.artifact.Artifact,​java.util.Set<java.lang.String>> usedUndeclaredArtifacts, java.util.Set<org.apache.maven.artifact.Artifact> unusedDeclaredArtifacts, java.util.Set<org.apache.maven.artifact.Artifact> testArtifactsWithNonTestScope)  
      ProjectDependencyAnalysis​(java.util.Set<org.apache.maven.artifact.Artifact> usedDeclaredArtifacts, java.util.Set<org.apache.maven.artifact.Artifact> usedUndeclaredArtifacts, java.util.Set<org.apache.maven.artifact.Artifact> unusedDeclaredArtifacts)
      Constructor for ProjectDependencyAnalysis to maintain compatibility with old API
      ProjectDependencyAnalysis​(java.util.Set<org.apache.maven.artifact.Artifact> usedDeclaredArtifacts, java.util.Set<org.apache.maven.artifact.Artifact> usedUndeclaredArtifacts, java.util.Set<org.apache.maven.artifact.Artifact> unusedDeclaredArtifacts, java.util.Set<org.apache.maven.artifact.Artifact> testArtifactsWithNonTestScope)
      Constructor for ProjectDependencyAnalysis.
    • Constructor Detail

      • ProjectDependencyAnalysis

        public ProjectDependencyAnalysis()

        Constructor for ProjectDependencyAnalysis.

      • ProjectDependencyAnalysis

        public ProjectDependencyAnalysis​(java.util.Set<org.apache.maven.artifact.Artifact> usedDeclaredArtifacts,
                                         java.util.Set<org.apache.maven.artifact.Artifact> usedUndeclaredArtifacts,
                                         java.util.Set<org.apache.maven.artifact.Artifact> unusedDeclaredArtifacts)

        Constructor for ProjectDependencyAnalysis to maintain compatibility with old API

        Parameters:
        usedDeclaredArtifacts - artifacts both used and declared
        usedUndeclaredArtifacts - artifacts used but not declared
        unusedDeclaredArtifacts - artifacts declared but not used
      • ProjectDependencyAnalysis

        public ProjectDependencyAnalysis​(java.util.Set<org.apache.maven.artifact.Artifact> usedDeclaredArtifacts,
                                         java.util.Set<org.apache.maven.artifact.Artifact> usedUndeclaredArtifacts,
                                         java.util.Set<org.apache.maven.artifact.Artifact> unusedDeclaredArtifacts,
                                         java.util.Set<org.apache.maven.artifact.Artifact> testArtifactsWithNonTestScope)

        Constructor for ProjectDependencyAnalysis.

        Parameters:
        usedDeclaredArtifacts - artifacts both used and declared
        usedUndeclaredArtifacts - artifacts used but not declared
        unusedDeclaredArtifacts - artifacts declared but not used
        testArtifactsWithNonTestScope - artifacts only used in tests but not declared with test scope
      • ProjectDependencyAnalysis

        public ProjectDependencyAnalysis​(java.util.Set<org.apache.maven.artifact.Artifact> usedDeclaredArtifacts,
                                         java.util.Map<org.apache.maven.artifact.Artifact,​java.util.Set<java.lang.String>> usedUndeclaredArtifacts,
                                         java.util.Set<org.apache.maven.artifact.Artifact> unusedDeclaredArtifacts,
                                         java.util.Set<org.apache.maven.artifact.Artifact> testArtifactsWithNonTestScope)
    • Method Detail

      • getUsedDeclaredArtifacts

        public java.util.Set<org.apache.maven.artifact.Artifact> getUsedDeclaredArtifacts()
        Returns artifacts both used and declared.
        Returns:
        artifacts both used and declared
      • getUsedUndeclaredArtifacts

        public java.util.Set<org.apache.maven.artifact.Artifact> getUsedUndeclaredArtifacts()
        Returns artifacts used but not declared.
        Returns:
        artifacts used but not declared
      • getUsedUndeclaredArtifactsWithClasses

        public java.util.Map<org.apache.maven.artifact.Artifact,​java.util.Set<java.lang.String>> getUsedUndeclaredArtifactsWithClasses()
        Returns artifacts used but not declared.
        Returns:
        artifacts used but not declared
      • getUnusedDeclaredArtifacts

        public java.util.Set<org.apache.maven.artifact.Artifact> getUnusedDeclaredArtifacts()
        Returns artifacts declared but not used.
        Returns:
        artifacts declared but not used
      • getTestArtifactsWithNonTestScope

        public java.util.Set<org.apache.maven.artifact.Artifact> getTestArtifactsWithNonTestScope()
        Returns artifacts only used in tests but not declared with test scope.
        Returns:
        artifacts only used in tests but not declared with test scope
      • ignoreNonCompile

        public ProjectDependencyAnalysis ignoreNonCompile()
        Filter non-compile scoped artifacts from unused declared.
        Returns:
        updated project dependency analysis
        Since:
        1.3
      • forceDeclaredDependenciesUsage

        public ProjectDependencyAnalysis forceDeclaredDependenciesUsage​(java.lang.String[] forceUsedDependencies)
                                                                 throws ProjectDependencyAnalyzerException
        Force use status of some declared dependencies, to manually fix consequences of bytecode-level analysis which happens to not detect some effective use (constants, annotation with source-retention, javadoc).
        Parameters:
        forceUsedDependencies - dependencies to move from "unused-declared" to "used-declared", with groupId:artifactId format
        Returns:
        updated project dependency analysis
        Throws:
        ProjectDependencyAnalyzerException - if dependencies forced were either not declared or already detected as used
        Since:
        1.3
      • hashCode

        public int hashCode()

        hashCode.

        Overrides:
        hashCode in class java.lang.Object
        Returns:
        an int
      • equals

        public boolean equals​(java.lang.Object object)
        Overrides:
        equals in class java.lang.Object
      • toString

        public java.lang.String toString()

        toString.

        Overrides:
        toString in class java.lang.Object
        Returns:
        a String object.