@Component(role=ArchetypeDataSource.class, hint="remote-catalog") public class RemoteCatalogArchetypeDataSource extends CatalogArchetypeDataSource implements ArchetypeDataSource
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
ARCHETYPE_REPOSITORY_ID
Id of the repository used to download catalog file.
|
static java.lang.String |
CENTRAL_REPOSITORY_ID |
private static java.lang.String |
EXTERNAL_WILDCARD |
private org.apache.maven.plugin.LegacySupport |
legacySupport |
private org.apache.maven.settings.crypto.SettingsDecrypter |
settingsDecrypter |
private java.util.Map<java.lang.String,org.apache.maven.wagon.Wagon> |
wagons |
private static java.lang.String |
WILDCARD |
ARCHETYPE_CATALOG_PROPERTY
ARCHETYPE_CATALOG_FILENAME
Constructor and Description |
---|
RemoteCatalogArchetypeDataSource() |
Modifier and Type | Method and Description |
---|---|
private void |
disconnectWagon(org.apache.maven.wagon.Wagon wagon) |
private ArchetypeCatalog |
downloadCatalog(org.apache.maven.artifact.repository.ArtifactRepository repository) |
ArchetypeCatalog |
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(org.apache.maven.wagon.repository.Repository repository) |
private org.apache.maven.wagon.Wagon |
getWagon(java.lang.String protocol) |
(package private) static boolean |
matchesLayout(org.apache.maven.artifact.repository.ArtifactRepository repository,
org.apache.maven.settings.Mirror mirror) |
(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 |
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) |
readCatalog, writeLocalCatalog
@Requirement private java.util.Map<java.lang.String,org.apache.maven.wagon.Wagon> wagons
@Requirement private org.apache.maven.plugin.LegacySupport legacySupport
@Requirement private org.apache.maven.settings.crypto.SettingsDecrypter settingsDecrypter
public static final java.lang.String ARCHETYPE_REPOSITORY_ID
public static final java.lang.String CENTRAL_REPOSITORY_ID
private static final java.lang.String WILDCARD
private static final java.lang.String EXTERNAL_WILDCARD
public ArchetypeCatalog getArchetypeCatalog(org.apache.maven.project.ProjectBuildingRequest buildingRequest) throws ArchetypeDataSourceException
getArchetypeCatalog
in interface ArchetypeDataSource
ArchetypeDataSourceException
public void updateCatalog(org.apache.maven.project.ProjectBuildingRequest buildingRequest, Archetype archetype) throws ArchetypeDataSourceException
updateCatalog
in interface ArchetypeDataSource
ArchetypeDataSourceException
private ArchetypeCatalog downloadCatalog(org.apache.maven.artifact.repository.ArtifactRepository repository) throws org.apache.maven.wagon.WagonException, java.io.IOException, ArchetypeDataSourceException
org.apache.maven.wagon.WagonException
java.io.IOException
ArchetypeDataSourceException
private void disconnectWagon(org.apache.maven.wagon.Wagon wagon)
private org.apache.maven.wagon.Wagon getWagon(org.apache.maven.wagon.repository.Repository repository) throws org.apache.maven.wagon.UnsupportedProtocolException
org.apache.maven.wagon.UnsupportedProtocolException
private org.apache.maven.wagon.Wagon getWagon(java.lang.String protocol) throws org.apache.maven.wagon.UnsupportedProtocolException
org.apache.maven.wagon.UnsupportedProtocolException
private org.apache.maven.wagon.authentication.AuthenticationInfo getAuthenticationInfo(java.lang.String id)
private org.apache.maven.wagon.proxy.ProxyInfo getProxy(java.lang.String protocol)
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)
static boolean matchPattern(java.lang.String originalId, java.lang.String pattern)
originalRepository
- to compare for a match.pattern
- used for match. Currently only '*' is supported.static boolean matchesLayout(org.apache.maven.artifact.repository.ArtifactRepository repository, org.apache.maven.settings.Mirror mirror)
static boolean matchesLayout(java.lang.String repoLayout, java.lang.String mirrorLayout)
repoLayout
- The layout of the repository, may be null
.mirrorLayout
- The layouts supported by the mirror, may be null
.true
if the layouts associated with the mirror match the layout of the original repository,
false
otherwise.