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
FieldsModifier and TypeFieldDescriptionstatic 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 -
Method Summary
Modifier and TypeMethodDescriptionprivate void
disconnectWagon
(org.apache.maven.wagon.Wagon wagon) private ArchetypeCatalog
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_IDId 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 interfaceArchetypeDataSource
- Throws:
ArchetypeDataSourceException
-
updateCatalog
public void updateCatalog(org.apache.maven.project.ProjectBuildingRequest buildingRequest, Archetype archetype) throws ArchetypeDataSourceException - Specified by:
updateCatalog
in interfaceArchetypeDataSource
- 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 benull
.mirrorLayout
- The layouts supported by the mirror, may benull
.- Returns:
true
if the layouts associated with the mirror match the layout of the original repository,false
otherwise.
-