Class DefaultProjectDependencyAnalyzer
- java.lang.Object
-
- org.apache.maven.shared.dependency.analyzer.DefaultProjectDependencyAnalyzer
-
- All Implemented Interfaces:
ProjectDependencyAnalyzer
@Named @Singleton public class DefaultProjectDependencyAnalyzer extends java.lang.Object implements ProjectDependencyAnalyzer
DefaultProjectDependencyAnalyzer class.
-
-
Field Summary
Fields Modifier and Type Field Description private ClassAnalyzerclassAnalyzerClassAnalyzerprivate DependencyAnalyzerdependencyAnalyzerDependencyAnalyzer
-
Constructor Summary
Constructors Constructor Description DefaultProjectDependencyAnalyzer()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description ProjectDependencyAnalysisanalyze(org.apache.maven.project.MavenProject project, java.util.Collection<java.lang.String> excludedClasses)analyze.protected java.util.Map<org.apache.maven.artifact.Artifact,java.util.Set<java.lang.String>>buildArtifactClassMap(org.apache.maven.project.MavenProject project, ClassesPatterns excludedClasses)private static java.util.Set<org.apache.maven.artifact.Artifact>buildDeclaredArtifacts(org.apache.maven.project.MavenProject project)private java.util.Set<DependencyUsage>buildDependencyClasses(java.lang.String path, ClassesPatterns excludedClasses)private java.util.Set<DependencyUsage>buildMainDependencyClasses(org.apache.maven.project.MavenProject project, ClassesPatterns excludedClasses)private java.util.Set<DependencyUsage>buildTestDependencyClasses(org.apache.maven.project.MavenProject project, ClassesPatterns excludedClasses)private static java.util.Set<DependencyUsage>buildTestOnlyDependencyClasses(java.util.Set<DependencyUsage> mainDependencyClasses, java.util.Set<DependencyUsage> testDependencyClasses)private static java.util.Map<org.apache.maven.artifact.Artifact,java.util.Set<DependencyUsage>>buildUsedArtifacts(java.util.Map<org.apache.maven.artifact.Artifact,java.util.Set<java.lang.String>> artifactClassMap, java.util.Set<DependencyUsage> dependencyClasses)private static org.apache.maven.artifact.ArtifactfindArtifactForClassName(java.util.Map<org.apache.maven.artifact.Artifact,java.util.Set<java.lang.String>> artifactClassMap, java.lang.String className)private static java.util.Set<org.apache.maven.artifact.Artifact>getTestArtifactsWithNonTestScope(java.util.Set<org.apache.maven.artifact.Artifact> testOnlyArtifacts)private static java.util.Set<org.apache.maven.artifact.Artifact>removeAll(java.util.Set<org.apache.maven.artifact.Artifact> start, java.util.Set<org.apache.maven.artifact.Artifact> remove)This method defines a new way to remove the artifacts by using the conflict id.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.maven.shared.dependency.analyzer.ProjectDependencyAnalyzer
analyze
-
-
-
-
Field Detail
-
classAnalyzer
@Inject private ClassAnalyzer classAnalyzer
ClassAnalyzer
-
dependencyAnalyzer
@Inject private DependencyAnalyzer dependencyAnalyzer
DependencyAnalyzer
-
-
Method Detail
-
analyze
public ProjectDependencyAnalysis analyze(org.apache.maven.project.MavenProject project, java.util.Collection<java.lang.String> excludedClasses) throws ProjectDependencyAnalyzerException
analyze.
- Specified by:
analyzein interfaceProjectDependencyAnalyzer- Parameters:
project- aMavenProjectobjectexcludedClasses- collection of regular expression of classes name to exclude- Returns:
- a
ProjectDependencyAnalysisobject - Throws:
ProjectDependencyAnalyzerException- if any
-
removeAll
private static java.util.Set<org.apache.maven.artifact.Artifact> removeAll(java.util.Set<org.apache.maven.artifact.Artifact> start, java.util.Set<org.apache.maven.artifact.Artifact> remove)This method defines a new way to remove the artifacts by using the conflict id. We don't care about the version here because there can be only 1 for a given artifact anyway.- Parameters:
start- initial setremove- set to exclude- Returns:
- set with remove excluded
-
getTestArtifactsWithNonTestScope
private static java.util.Set<org.apache.maven.artifact.Artifact> getTestArtifactsWithNonTestScope(java.util.Set<org.apache.maven.artifact.Artifact> testOnlyArtifacts)
-
buildArtifactClassMap
protected java.util.Map<org.apache.maven.artifact.Artifact,java.util.Set<java.lang.String>> buildArtifactClassMap(org.apache.maven.project.MavenProject project, ClassesPatterns excludedClasses) throws java.io.IOException- Throws:
java.io.IOException
-
buildTestOnlyDependencyClasses
private static java.util.Set<DependencyUsage> buildTestOnlyDependencyClasses(java.util.Set<DependencyUsage> mainDependencyClasses, java.util.Set<DependencyUsage> testDependencyClasses)
-
buildMainDependencyClasses
private java.util.Set<DependencyUsage> buildMainDependencyClasses(org.apache.maven.project.MavenProject project, ClassesPatterns excludedClasses) throws java.io.IOException
- Throws:
java.io.IOException
-
buildTestDependencyClasses
private java.util.Set<DependencyUsage> buildTestDependencyClasses(org.apache.maven.project.MavenProject project, ClassesPatterns excludedClasses) throws java.io.IOException
- Throws:
java.io.IOException
-
buildDependencyClasses
private java.util.Set<DependencyUsage> buildDependencyClasses(java.lang.String path, ClassesPatterns excludedClasses) throws java.io.IOException
- Throws:
java.io.IOException
-
buildDeclaredArtifacts
private static java.util.Set<org.apache.maven.artifact.Artifact> buildDeclaredArtifacts(org.apache.maven.project.MavenProject project)
-
buildUsedArtifacts
private static java.util.Map<org.apache.maven.artifact.Artifact,java.util.Set<DependencyUsage>> buildUsedArtifacts(java.util.Map<org.apache.maven.artifact.Artifact,java.util.Set<java.lang.String>> artifactClassMap, java.util.Set<DependencyUsage> dependencyClasses)
-
findArtifactForClassName
private static org.apache.maven.artifact.Artifact findArtifactForClassName(java.util.Map<org.apache.maven.artifact.Artifact,java.util.Set<java.lang.String>> artifactClassMap, java.lang.String className)
-
-