Class FlattenModelResolver

  • All Implemented Interfaces:
    org.apache.maven.model.resolution.ModelResolver

    public class FlattenModelResolver
    extends java.lang.Object
    implements org.apache.maven.model.resolution.ModelResolver
    This is a custom implementation of ModelResolver to emulate the maven POM resolution in order to build the flattened POM.
    See Also:
    FlattenMojo
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.String context  
      private ReactorModelPool reactorModelPool
      The modules of the project being built.
      private java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories  
      private org.eclipse.aether.RepositorySystem repositorySystem  
      private org.eclipse.aether.RepositorySystemSession session  
      private org.eclipse.aether.RequestTrace trace  
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private FlattenModelResolver​(FlattenModelResolver other)  
        FlattenModelResolver​(org.eclipse.aether.RepositorySystemSession session, org.eclipse.aether.RepositorySystem repositorySystem, org.eclipse.aether.RequestTrace trace, java.lang.String context, java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories, java.util.List<org.apache.maven.project.MavenProject> reactorModels)
      The constructor.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addRepository​(org.apache.maven.model.Repository repository)
      void addRepository​(org.apache.maven.model.Repository repository, boolean replace)  
      org.apache.maven.model.resolution.ModelResolver newCopy()
      org.apache.maven.model.building.ModelSource resolveModel​(java.lang.String groupId, java.lang.String artifactId, java.lang.String version)
      org.apache.maven.model.building.ModelSource resolveModel​(org.apache.maven.model.Dependency dependency)  
      org.apache.maven.model.building.ModelSource resolveModel​(org.apache.maven.model.Parent parent)
      Resolves the POM for the specified parent.
      private java.lang.String resolveVersion​(java.lang.String groupId, java.lang.String artifactId, java.lang.String version)  
      • Methods inherited from class java.lang.Object

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

      • session

        private final org.eclipse.aether.RepositorySystemSession session
      • repositorySystem

        private final org.eclipse.aether.RepositorySystem repositorySystem
      • trace

        private final org.eclipse.aether.RequestTrace trace
      • context

        private final java.lang.String context
      • repositories

        private final java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories
      • reactorModelPool

        private final ReactorModelPool reactorModelPool
        The modules of the project being built.
    • Constructor Detail

      • FlattenModelResolver

        public FlattenModelResolver​(org.eclipse.aether.RepositorySystemSession session,
                                    org.eclipse.aether.RepositorySystem repositorySystem,
                                    org.eclipse.aether.RequestTrace trace,
                                    java.lang.String context,
                                    java.util.List<org.eclipse.aether.repository.RemoteRepository> repositories,
                                    java.util.List<org.apache.maven.project.MavenProject> reactorModels)
        The constructor.
    • Method Detail

      • resolveModel

        public org.apache.maven.model.building.ModelSource resolveModel​(java.lang.String groupId,
                                                                        java.lang.String artifactId,
                                                                        java.lang.String version)
                                                                 throws org.apache.maven.model.resolution.UnresolvableModelException
        Specified by:
        resolveModel in interface org.apache.maven.model.resolution.ModelResolver
        Throws:
        org.apache.maven.model.resolution.UnresolvableModelException
      • addRepository

        public void addRepository​(org.apache.maven.model.Repository repository)
        Specified by:
        addRepository in interface org.apache.maven.model.resolution.ModelResolver
      • newCopy

        public org.apache.maven.model.resolution.ModelResolver newCopy()
        Specified by:
        newCopy in interface org.apache.maven.model.resolution.ModelResolver
      • resolveModel

        public org.apache.maven.model.building.ModelSource resolveModel​(org.apache.maven.model.Parent parent)
                                                                 throws org.apache.maven.model.resolution.UnresolvableModelException
        Resolves the POM for the specified parent.
        Specified by:
        resolveModel in interface org.apache.maven.model.resolution.ModelResolver
        Parameters:
        parent - the parent coordinates to resolve, must not be null
        Returns:
        The source of the requested POM, never null
        Throws:
        org.apache.maven.model.resolution.UnresolvableModelException
        Since:
        Apache-Maven-3.2.2 (MNG-5639)
      • resolveModel

        public org.apache.maven.model.building.ModelSource resolveModel​(org.apache.maven.model.Dependency dependency)
                                                                 throws org.apache.maven.model.resolution.UnresolvableModelException
        Specified by:
        resolveModel in interface org.apache.maven.model.resolution.ModelResolver
        Throws:
        org.apache.maven.model.resolution.UnresolvableModelException
      • resolveVersion

        private java.lang.String resolveVersion​(java.lang.String groupId,
                                                java.lang.String artifactId,
                                                java.lang.String version)
                                         throws org.apache.maven.model.resolution.UnresolvableModelException
        Throws:
        org.apache.maven.model.resolution.UnresolvableModelException
      • addRepository

        public void addRepository​(org.apache.maven.model.Repository repository,
                                  boolean replace)
        Specified by:
        addRepository in interface org.apache.maven.model.resolution.ModelResolver
        Parameters:
        repository - The repository to add to the internal search chain, must not be null.
        replace - {true} when repository with same id should be replaced, otherwise false.
        Since:
        Apache-Maven-3.2.3 (MNG-5663)