Package org.eclipse.aether.internal.impl
Class DefaultRemoteRepositoryManager
- java.lang.Object
-
- org.eclipse.aether.internal.impl.DefaultRemoteRepositoryManager
-
- All Implemented Interfaces:
RemoteRepositoryManager,Service
@Named public class DefaultRemoteRepositoryManager extends java.lang.Object implements RemoteRepositoryManager, Service
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classDefaultRemoteRepositoryManager.LoggedMirror
-
Field Summary
Fields Modifier and Type Field Description private ChecksumPolicyProviderchecksumPolicyProviderprivate static org.slf4j.LoggerLOGGERprivate UpdatePolicyAnalyzerupdatePolicyAnalyzer
-
Constructor Summary
Constructors Constructor Description DefaultRemoteRepositoryManager()DefaultRemoteRepositoryManager(UpdatePolicyAnalyzer updatePolicyAnalyzer, ChecksumPolicyProvider checksumPolicyProvider)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.util.List<RemoteRepository>aggregateRepositories(RepositorySystemSession session, java.util.List<RemoteRepository> dominantRepositories, java.util.List<RemoteRepository> recessiveRepositories, boolean recessiveIsRaw)Aggregates repository definitions by merging duplicate repositories and optionally applies mirror, proxy and authentication settings from the supplied session.private java.lang.StringgetKey(RemoteRepository repository)RepositoryPolicygetPolicy(RepositorySystemSession session, RemoteRepository repository, boolean releases, boolean snapshots)Gets the effective repository policy for the specified remote repository by merging the applicable snapshot/release policy of the repository with global settings from the supplied session.voidinitService(ServiceLocator locator)Provides the opportunity to initialize this service and to acquire other services for its operation from the locator.private voidlogMirror(RepositorySystemSession session, RemoteRepository original, RemoteRepository mirror)private RepositoryPolicymerge(RepositoryPolicy policy, java.lang.String updates, java.lang.String checksums)private RepositoryPolicymerge(RepositorySystemSession session, RepositoryPolicy policy1, RepositoryPolicy policy2, boolean globalPolicy)private RemoteRepositorymergeMirrors(RepositorySystemSession session, RemoteRepository dominant, RemoteRepository recessive)DefaultRemoteRepositoryManagersetChecksumPolicyProvider(ChecksumPolicyProvider checksumPolicyProvider)DefaultRemoteRepositoryManagersetUpdatePolicyAnalyzer(UpdatePolicyAnalyzer updatePolicyAnalyzer)
-
-
-
Field Detail
-
LOGGER
private static final org.slf4j.Logger LOGGER
-
updatePolicyAnalyzer
private UpdatePolicyAnalyzer updatePolicyAnalyzer
-
checksumPolicyProvider
private ChecksumPolicyProvider checksumPolicyProvider
-
-
Constructor Detail
-
DefaultRemoteRepositoryManager
public DefaultRemoteRepositoryManager()
-
DefaultRemoteRepositoryManager
@Inject DefaultRemoteRepositoryManager(UpdatePolicyAnalyzer updatePolicyAnalyzer, ChecksumPolicyProvider checksumPolicyProvider)
-
-
Method Detail
-
initService
public void initService(ServiceLocator locator)
Description copied from interface:ServiceProvides the opportunity to initialize this service and to acquire other services for its operation from the locator. A service must not save the reference to the provided service locator.- Specified by:
initServicein interfaceService- Parameters:
locator- The service locator, must not benull.
-
setUpdatePolicyAnalyzer
public DefaultRemoteRepositoryManager setUpdatePolicyAnalyzer(UpdatePolicyAnalyzer updatePolicyAnalyzer)
-
setChecksumPolicyProvider
public DefaultRemoteRepositoryManager setChecksumPolicyProvider(ChecksumPolicyProvider checksumPolicyProvider)
-
aggregateRepositories
public java.util.List<RemoteRepository> aggregateRepositories(RepositorySystemSession session, java.util.List<RemoteRepository> dominantRepositories, java.util.List<RemoteRepository> recessiveRepositories, boolean recessiveIsRaw)
Description copied from interface:RemoteRepositoryManagerAggregates repository definitions by merging duplicate repositories and optionally applies mirror, proxy and authentication settings from the supplied session.- Specified by:
aggregateRepositoriesin interfaceRemoteRepositoryManager- Parameters:
session- The repository session during which the repositories will be accessed, must not benull.dominantRepositories- The current list of remote repositories to merge the new definitions into, must not benull.recessiveRepositories- The remote repositories to merge into the existing list, must not benull.recessiveIsRaw-trueif the recessive repository definitions have not yet been subjected to mirror, proxy and authentication settings,falseotherwise.- Returns:
- The aggregated list of remote repositories, never
null. - See Also:
RepositorySystemSession.getMirrorSelector(),RepositorySystemSession.getProxySelector(),RepositorySystemSession.getAuthenticationSelector()
-
logMirror
private void logMirror(RepositorySystemSession session, RemoteRepository original, RemoteRepository mirror)
-
getKey
private java.lang.String getKey(RemoteRepository repository)
-
mergeMirrors
private RemoteRepository mergeMirrors(RepositorySystemSession session, RemoteRepository dominant, RemoteRepository recessive)
-
getPolicy
public RepositoryPolicy getPolicy(RepositorySystemSession session, RemoteRepository repository, boolean releases, boolean snapshots)
Description copied from interface:RemoteRepositoryManagerGets the effective repository policy for the specified remote repository by merging the applicable snapshot/release policy of the repository with global settings from the supplied session.- Specified by:
getPolicyin interfaceRemoteRepositoryManager- Parameters:
session- The repository session during which the repository will be accessed, must not benull.repository- The remote repository to determine the effective policy for, must not benull.releases-trueif the policy for release artifacts needs to be considered,falseif not.snapshots-trueif the policy for snapshot artifacts needs to be considered,falseif not.- Returns:
- The effective repository policy, never
null. - See Also:
RepositorySystemSession.getChecksumPolicy(),RepositorySystemSession.getUpdatePolicy()
-
merge
private RepositoryPolicy merge(RepositorySystemSession session, RepositoryPolicy policy1, RepositoryPolicy policy2, boolean globalPolicy)
-
merge
private RepositoryPolicy merge(RepositoryPolicy policy, java.lang.String updates, java.lang.String checksums)
-
-