Class Maven31DependencyGraphBuilder

  • All Implemented Interfaces:
    DependencyGraphBuilder, org.codehaus.plexus.logging.LogEnabled

    @Component(role=DependencyGraphBuilder.class,
               hint="maven31")
    public class Maven31DependencyGraphBuilder
    extends org.codehaus.plexus.logging.AbstractLogEnabled
    implements DependencyGraphBuilder
    Wrapper around Eclipse Aether dependency resolver, used in Maven 3.1.
    Since:
    2.1
    See Also:
    ProjectDependenciesResolver
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private org.apache.maven.project.ProjectDependenciesResolver resolver  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      DependencyNode buildDependencyGraph​(org.apache.maven.project.ProjectBuildingRequest buildingRequest, org.apache.maven.artifact.resolver.filter.ArtifactFilter filter)
      Builds the dependency graph for Maven 3.1+.
      DependencyNode buildDependencyGraph​(org.apache.maven.project.ProjectBuildingRequest buildingRequest, org.apache.maven.artifact.resolver.filter.ArtifactFilter filter, java.util.Collection<org.apache.maven.project.MavenProject> reactorProjects)
      Builds the dependency graph for Maven 3.1+, eventually hacking for collecting projects from reactor not yet built.
      private DependencyNode buildDependencyNode​(DependencyNode parent, org.eclipse.aether.graph.DependencyNode node, org.apache.maven.artifact.Artifact artifact, org.apache.maven.artifact.resolver.filter.ArtifactFilter filter)  
      private org.apache.maven.project.DependencyResolutionResult collectDependenciesFromReactor​(org.apache.maven.project.DependencyResolutionException e, java.util.Collection<org.apache.maven.project.MavenProject> reactorProjects)  
      private org.apache.maven.artifact.Artifact getDependencyArtifact​(org.eclipse.aether.graph.Dependency dep)  
      private java.util.List<org.eclipse.aether.graph.Dependency> getReactorDependencies​(java.util.Collection<org.apache.maven.project.MavenProject> reactorProjects, java.util.List<?> dependencies)  
      private java.lang.String getVersionSelectedFromRange​(org.eclipse.aether.version.VersionConstraint constraint)  
      private org.apache.maven.project.DependencyResolutionResult resolveDependencies​(org.apache.maven.project.DependencyResolutionRequest request, java.util.Collection<org.apache.maven.project.MavenProject> reactorProjects)  
      • Methods inherited from class org.codehaus.plexus.logging.AbstractLogEnabled

        enableLogging, getLogger, setupLogger, setupLogger, setupLogger
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • resolver

        @Requirement
        private org.apache.maven.project.ProjectDependenciesResolver resolver
    • Constructor Detail

      • Maven31DependencyGraphBuilder

        public Maven31DependencyGraphBuilder()
    • Method Detail

      • buildDependencyGraph

        public DependencyNode buildDependencyGraph​(org.apache.maven.project.ProjectBuildingRequest buildingRequest,
                                                   org.apache.maven.artifact.resolver.filter.ArtifactFilter filter)
                                            throws DependencyGraphBuilderException
        Builds the dependency graph for Maven 3.1+.
        Specified by:
        buildDependencyGraph in interface DependencyGraphBuilder
        Parameters:
        buildingRequest - the buildingRequest
        filter - artifact filter (can be null)
        Returns:
        DependencyNode containing the dependency graph.
        Throws:
        DependencyGraphBuilderException - if some of the dependencies could not be resolved.
      • buildDependencyGraph

        public DependencyNode buildDependencyGraph​(org.apache.maven.project.ProjectBuildingRequest buildingRequest,
                                                   org.apache.maven.artifact.resolver.filter.ArtifactFilter filter,
                                                   java.util.Collection<org.apache.maven.project.MavenProject> reactorProjects)
                                            throws DependencyGraphBuilderException
        Builds the dependency graph for Maven 3.1+, eventually hacking for collecting projects from reactor not yet built.
        Specified by:
        buildDependencyGraph in interface DependencyGraphBuilder
        Parameters:
        buildingRequest - the buildingRequest
        filter - artifact filter (can be null)
        reactorProjects - Collection of those projects contained in the reactor (can be null).
        Returns:
        DependencyNode containing the dependency graph.
        Throws:
        DependencyGraphBuilderException - if some of the dependencies could not be resolved.
      • resolveDependencies

        private org.apache.maven.project.DependencyResolutionResult resolveDependencies​(org.apache.maven.project.DependencyResolutionRequest request,
                                                                                        java.util.Collection<org.apache.maven.project.MavenProject> reactorProjects)
                                                                                 throws DependencyGraphBuilderException
        Throws:
        DependencyGraphBuilderException
      • collectDependenciesFromReactor

        private org.apache.maven.project.DependencyResolutionResult collectDependenciesFromReactor​(org.apache.maven.project.DependencyResolutionException e,
                                                                                                   java.util.Collection<org.apache.maven.project.MavenProject> reactorProjects)
                                                                                            throws DependencyGraphBuilderException
        Throws:
        DependencyGraphBuilderException
      • getReactorDependencies

        private java.util.List<org.eclipse.aether.graph.Dependency> getReactorDependencies​(java.util.Collection<org.apache.maven.project.MavenProject> reactorProjects,
                                                                                           java.util.List<?> dependencies)
      • getDependencyArtifact

        private org.apache.maven.artifact.Artifact getDependencyArtifact​(org.eclipse.aether.graph.Dependency dep)
      • buildDependencyNode

        private DependencyNode buildDependencyNode​(DependencyNode parent,
                                                   org.eclipse.aether.graph.DependencyNode node,
                                                   org.apache.maven.artifact.Artifact artifact,
                                                   org.apache.maven.artifact.resolver.filter.ArtifactFilter filter)
      • getVersionSelectedFromRange

        private java.lang.String getVersionSelectedFromRange​(org.eclipse.aether.version.VersionConstraint constraint)