Class DefaultDependencyCollector
java.lang.Object
org.eclipse.aether.internal.impl.collect.DefaultDependencyCollector
- All Implemented Interfaces:
DependencyCollector,Service
@Singleton
@Named
public class DefaultDependencyCollector
extends Object
implements DependencyCollector, Service
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescription(package private) static class(package private) static class(package private) static class -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Stringprivate static final intprivate static final Stringprivate static final intprivate ArtifactDescriptorReaderprivate static final org.slf4j.Loggerprivate RemoteRepositoryManagerprivate VersionRangeResolver -
Constructor Summary
ConstructorsConstructorDescriptionDefaultDependencyCollector(RemoteRepositoryManager remoteRepositoryManager, ArtifactDescriptorReader artifactDescriptorReader, VersionRangeResolver versionRangeResolver) -
Method Summary
Modifier and TypeMethodDescriptionprivate VersionRangeResultcachedResolveRangeResult(VersionRangeRequest rangeRequest, DataPool pool, RepositorySystemSession session) collectDependencies(RepositorySystemSession session, CollectRequest request) Collects the transitive dependencies of some artifacts and builds a dependency graph.private static ArtifactDescriptorRequestcreateArtifactDescriptorRequest(DefaultDependencyCollector.Args args, List<RemoteRepository> repositories, Dependency d) private static DefaultDependencyNodecreateDependencyNode(List<Artifact> relocations, DefaultDependencyCollector.PremanagedDependency preManaged, VersionRangeResult rangeResult, Version version, Dependency d, Collection<Artifact> aliases, List<RemoteRepository> repos, String requestContext) private static DefaultDependencyNodecreateDependencyNode(List<Artifact> relocations, DefaultDependencyCollector.PremanagedDependency preManaged, VersionRangeResult rangeResult, Version version, Dependency d, ArtifactDescriptorResult descriptorResult, DependencyNode cycleNode) private static VersionRangeRequestcreateVersionRangeRequest(DefaultDependencyCollector.Args args, List<RemoteRepository> repositories, Dependency dependency) private voiddoRecurse(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, List<RemoteRepository> repositories, DependencySelector depSelector, DependencyManager depManager, DependencyTraverser depTraverser, VersionFilter verFilter, Dependency d, ArtifactDescriptorResult descriptorResult, DefaultDependencyNode child) filterVersions(Dependency dependency, VersionRangeResult rangeResult, VersionFilter verFilter, DefaultVersionFilterContext verContext) private ArtifactDescriptorResultgetArtifactDescriptorResult(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, boolean noDescriptor, Dependency d, ArtifactDescriptorRequest descriptorRequest) private static Stringprivate static List<RemoteRepository>getRemoteRepositories(ArtifactRepository repository, List<RemoteRepository> repositories) voidinitService(ServiceLocator locator) Provides the opportunity to initialize this service and to acquire other services for its operation from the locator.private static booleanisLackingDescriptor(Artifact artifact) private List<Dependency>mergeDeps(List<Dependency> dominant, List<Dependency> recessive) private static RepositorySystemSessionoptimizeSession(RepositorySystemSession session) private voidprocess(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, List<Dependency> dependencies, List<RemoteRepository> repositories, DependencySelector depSelector, DependencyManager depManager, DependencyTraverser depTraverser, VersionFilter verFilter) private voidprocessDependency(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, List<RemoteRepository> repositories, DependencySelector depSelector, DependencyManager depManager, DependencyTraverser depTraverser, VersionFilter verFilter, Dependency dependency) private voidprocessDependency(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, List<RemoteRepository> repositories, DependencySelector depSelector, DependencyManager depManager, DependencyTraverser depTraverser, VersionFilter verFilter, Dependency dependency, List<Artifact> relocations, boolean disableVersionManagement) private ArtifactDescriptorResultresolveCachedArtifactDescriptor(DataPool pool, ArtifactDescriptorRequest descriptorRequest, RepositorySystemSession session, Dependency d, DefaultDependencyCollector.Results results, DefaultDependencyCollector.Args args) setArtifactDescriptorReader(ArtifactDescriptorReader artifactDescriptorReader) setRemoteRepositoryManager(RemoteRepositoryManager remoteRepositoryManager) setVersionRangeResolver(VersionRangeResolver versionRangeResolver)
-
Field Details
-
CONFIG_PROP_MAX_EXCEPTIONS
- See Also:
-
CONFIG_PROP_MAX_EXCEPTIONS_DEFAULT
private static final int CONFIG_PROP_MAX_EXCEPTIONS_DEFAULT- See Also:
-
CONFIG_PROP_MAX_CYCLES
- See Also:
-
CONFIG_PROP_MAX_CYCLES_DEFAULT
private static final int CONFIG_PROP_MAX_CYCLES_DEFAULT- See Also:
-
LOGGER
private static final org.slf4j.Logger LOGGER -
remoteRepositoryManager
-
descriptorReader
-
versionRangeResolver
-
-
Constructor Details
-
DefaultDependencyCollector
public DefaultDependencyCollector() -
DefaultDependencyCollector
@Inject DefaultDependencyCollector(RemoteRepositoryManager remoteRepositoryManager, ArtifactDescriptorReader artifactDescriptorReader, VersionRangeResolver versionRangeResolver)
-
-
Method Details
-
initService
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.
-
setRemoteRepositoryManager
public DefaultDependencyCollector setRemoteRepositoryManager(RemoteRepositoryManager remoteRepositoryManager) -
setArtifactDescriptorReader
public DefaultDependencyCollector setArtifactDescriptorReader(ArtifactDescriptorReader artifactDescriptorReader) -
setVersionRangeResolver
public DefaultDependencyCollector setVersionRangeResolver(VersionRangeResolver versionRangeResolver) -
collectDependencies
public CollectResult collectDependencies(RepositorySystemSession session, CollectRequest request) throws DependencyCollectionException Description copied from interface:DependencyCollectorCollects the transitive dependencies of some artifacts and builds a dependency graph. Note that this operation is only concerned about determining the coordinates of the transitive dependencies and does not actually resolve the artifact files. The supplied session carries various hooks to customize the dependency graph that must be invoked throughout the operation.- Specified by:
collectDependenciesin interfaceDependencyCollector- Parameters:
session- The repository session, must not benull.request- The collection request, must not benull.- Returns:
- The collection result, never
null. - Throws:
DependencyCollectionException- If the dependency tree could not be built.- See Also:
-
RepositorySystemSession.getDependencyTraverser()RepositorySystemSession.getDependencyManager()RepositorySystemSession.getDependencySelector()RepositorySystemSession.getVersionFilter()RepositorySystemSession.getDependencyGraphTransformer()RepositorySystem.collectDependencies(RepositorySystemSession, CollectRequest)
-
optimizeSession
-
mergeDeps
-
getId
-
process
private void process(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, List<Dependency> dependencies, List<RemoteRepository> repositories, DependencySelector depSelector, DependencyManager depManager, DependencyTraverser depTraverser, VersionFilter verFilter) -
processDependency
private void processDependency(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, List<RemoteRepository> repositories, DependencySelector depSelector, DependencyManager depManager, DependencyTraverser depTraverser, VersionFilter verFilter, Dependency dependency) -
processDependency
private void processDependency(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, List<RemoteRepository> repositories, DependencySelector depSelector, DependencyManager depManager, DependencyTraverser depTraverser, VersionFilter verFilter, Dependency dependency, List<Artifact> relocations, boolean disableVersionManagement) -
doRecurse
private void doRecurse(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, List<RemoteRepository> repositories, DependencySelector depSelector, DependencyManager depManager, DependencyTraverser depTraverser, VersionFilter verFilter, Dependency d, ArtifactDescriptorResult descriptorResult, DefaultDependencyNode child) -
getArtifactDescriptorResult
private ArtifactDescriptorResult getArtifactDescriptorResult(DefaultDependencyCollector.Args args, DefaultDependencyCollector.Results results, boolean noDescriptor, Dependency d, ArtifactDescriptorRequest descriptorRequest) -
resolveCachedArtifactDescriptor
private ArtifactDescriptorResult resolveCachedArtifactDescriptor(DataPool pool, ArtifactDescriptorRequest descriptorRequest, RepositorySystemSession session, Dependency d, DefaultDependencyCollector.Results results, DefaultDependencyCollector.Args args) -
createDependencyNode
private static DefaultDependencyNode createDependencyNode(List<Artifact> relocations, DefaultDependencyCollector.PremanagedDependency preManaged, VersionRangeResult rangeResult, Version version, Dependency d, Collection<Artifact> aliases, List<RemoteRepository> repos, String requestContext) -
createDependencyNode
private static DefaultDependencyNode createDependencyNode(List<Artifact> relocations, DefaultDependencyCollector.PremanagedDependency preManaged, VersionRangeResult rangeResult, Version version, Dependency d, ArtifactDescriptorResult descriptorResult, DependencyNode cycleNode) -
createArtifactDescriptorRequest
private static ArtifactDescriptorRequest createArtifactDescriptorRequest(DefaultDependencyCollector.Args args, List<RemoteRepository> repositories, Dependency d) -
createVersionRangeRequest
private static VersionRangeRequest createVersionRangeRequest(DefaultDependencyCollector.Args args, List<RemoteRepository> repositories, Dependency dependency) -
cachedResolveRangeResult
private VersionRangeResult cachedResolveRangeResult(VersionRangeRequest rangeRequest, DataPool pool, RepositorySystemSession session) throws VersionRangeResolutionException - Throws:
VersionRangeResolutionException
-
isLackingDescriptor
-
getRemoteRepositories
private static List<RemoteRepository> getRemoteRepositories(ArtifactRepository repository, List<RemoteRepository> repositories) -
filterVersions
private static List<? extends Version> filterVersions(Dependency dependency, VersionRangeResult rangeResult, VersionFilter verFilter, DefaultVersionFilterContext verContext) throws VersionRangeResolutionException - Throws:
VersionRangeResolutionException
-