Class RemoteCatalogArchetypeDataSource

java.lang.Object
org.codehaus.plexus.logging.AbstractLogEnabled
org.apache.maven.archetype.source.CatalogArchetypeDataSource
org.apache.maven.archetype.source.RemoteCatalogArchetypeDataSource
All Implemented Interfaces:
ArchetypeDataSource, org.codehaus.plexus.logging.LogEnabled

@Component(role=ArchetypeDataSource.class, hint="remote-catalog") public class RemoteCatalogArchetypeDataSource extends CatalogArchetypeDataSource implements ArchetypeDataSource
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final java.lang.String
    Id of the repository used to download catalog file.
    static final java.lang.String
     
    private static final java.lang.String
     
    private org.apache.maven.plugin.LegacySupport
     
    private org.apache.maven.settings.crypto.SettingsDecrypter
     
    private java.util.Map<java.lang.String,org.apache.maven.wagon.Wagon>
     
    private static final java.lang.String
     

    Fields inherited from class org.apache.maven.archetype.source.CatalogArchetypeDataSource

    ARCHETYPE_CATALOG_PROPERTY

    Fields inherited from interface org.apache.maven.archetype.source.ArchetypeDataSource

    ARCHETYPE_CATALOG_FILENAME
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    private void
    disconnectWagon(org.apache.maven.wagon.Wagon wagon)
     
    downloadCatalog(org.apache.maven.artifact.repository.ArtifactRepository repository)
     
    getArchetypeCatalog(org.apache.maven.project.ProjectBuildingRequest buildingRequest)
     
    private org.apache.maven.wagon.authentication.AuthenticationInfo
    getAuthenticationInfo(java.lang.String id)
     
    private org.apache.maven.settings.Mirror
    getMirror(java.lang.String repoId)
     
    private org.apache.maven.settings.Mirror
    getMirror(java.lang.String repoId, java.util.List<org.apache.maven.settings.Mirror> mirrors)
     
    private org.apache.maven.wagon.proxy.ProxyInfo
    getProxy(java.lang.String protocol)
     
    private org.apache.maven.wagon.Wagon
    getWagon(java.lang.String protocol)
     
    private org.apache.maven.wagon.Wagon
    getWagon(org.apache.maven.wagon.repository.Repository repository)
     
    (package private) static boolean
    matchesLayout(java.lang.String repoLayout, java.lang.String mirrorLayout)
    Checks whether the layouts configured for a mirror match with the layout of the repository.
    (package private) static boolean
    matchesLayout(org.apache.maven.artifact.repository.ArtifactRepository repository, org.apache.maven.settings.Mirror mirror)
     
    (package private) static boolean
    matchPattern(java.lang.String originalId, java.lang.String pattern)
    This method checks if the pattern matches the originalRepository.
    void
    updateCatalog(org.apache.maven.project.ProjectBuildingRequest buildingRequest, Archetype archetype)
     

    Methods inherited from class org.apache.maven.archetype.source.CatalogArchetypeDataSource

    readCatalog, writeLocalCatalog

    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 Details

    • wagons

      @Requirement private java.util.Map<java.lang.String,org.apache.maven.wagon.Wagon> wagons
    • legacySupport

      @Requirement private org.apache.maven.plugin.LegacySupport legacySupport
    • settingsDecrypter

      @Requirement private org.apache.maven.settings.crypto.SettingsDecrypter settingsDecrypter
    • ARCHETYPE_REPOSITORY_ID

      public static final java.lang.String ARCHETYPE_REPOSITORY_ID
      Id of the repository used to download catalog file. Proxy or authentication info can be setup in settings.xml.
      See Also:
    • CENTRAL_REPOSITORY_ID

      public static final java.lang.String CENTRAL_REPOSITORY_ID
      See Also:
    • WILDCARD

      private static final java.lang.String WILDCARD
      See Also:
    • EXTERNAL_WILDCARD

      private static final java.lang.String EXTERNAL_WILDCARD
      See Also:
  • Constructor Details

    • RemoteCatalogArchetypeDataSource

      public RemoteCatalogArchetypeDataSource()
  • Method Details

    • getArchetypeCatalog

      public ArchetypeCatalog getArchetypeCatalog(org.apache.maven.project.ProjectBuildingRequest buildingRequest) throws ArchetypeDataSourceException
      Specified by:
      getArchetypeCatalog in interface ArchetypeDataSource
      Throws:
      ArchetypeDataSourceException
    • updateCatalog

      public void updateCatalog(org.apache.maven.project.ProjectBuildingRequest buildingRequest, Archetype archetype) throws ArchetypeDataSourceException
      Specified by:
      updateCatalog in interface ArchetypeDataSource
      Throws:
      ArchetypeDataSourceException
    • downloadCatalog

      private ArchetypeCatalog downloadCatalog(org.apache.maven.artifact.repository.ArtifactRepository repository) throws org.apache.maven.wagon.WagonException, java.io.IOException, ArchetypeDataSourceException
      Throws:
      org.apache.maven.wagon.WagonException
      java.io.IOException
      ArchetypeDataSourceException
    • disconnectWagon

      private void disconnectWagon(org.apache.maven.wagon.Wagon wagon)
    • getWagon

      private org.apache.maven.wagon.Wagon getWagon(org.apache.maven.wagon.repository.Repository repository) throws org.apache.maven.wagon.UnsupportedProtocolException
      Throws:
      org.apache.maven.wagon.UnsupportedProtocolException
    • getWagon

      private org.apache.maven.wagon.Wagon getWagon(java.lang.String protocol) throws org.apache.maven.wagon.UnsupportedProtocolException
      Throws:
      org.apache.maven.wagon.UnsupportedProtocolException
    • getAuthenticationInfo

      private org.apache.maven.wagon.authentication.AuthenticationInfo getAuthenticationInfo(java.lang.String id)
    • getProxy

      private org.apache.maven.wagon.proxy.ProxyInfo getProxy(java.lang.String protocol)
    • getMirror

      private org.apache.maven.settings.Mirror getMirror(java.lang.String repoId)
    • getMirror

      private org.apache.maven.settings.Mirror getMirror(java.lang.String repoId, java.util.List<org.apache.maven.settings.Mirror> mirrors)
    • matchPattern

      static boolean matchPattern(java.lang.String originalId, java.lang.String pattern)
      This method checks if the pattern matches the originalRepository. Valid patterns: * = everything external:* = everything not on the localhost and not file based. repo,repo1 = repo or repo1 *,!repo1 = everything except repo1
      Parameters:
      originalId - to compare for a match.
      pattern - used for match. Currently only '*' is supported.
      Returns:
      true if the repository is a match to this pattern.
    • matchesLayout

      static boolean matchesLayout(org.apache.maven.artifact.repository.ArtifactRepository repository, org.apache.maven.settings.Mirror mirror)
    • matchesLayout

      static boolean matchesLayout(java.lang.String repoLayout, java.lang.String mirrorLayout)
      Checks whether the layouts configured for a mirror match with the layout of the repository.
      Parameters:
      repoLayout - The layout of the repository, may be null.
      mirrorLayout - The layouts supported by the mirror, may be null.
      Returns:
      true if the layouts associated with the mirror match the layout of the original repository, false otherwise.