org.sonatype.aether
Interface RepositorySystem

All Known Implementing Classes:
DefaultRepositorySystem

public interface RepositorySystem

The main entry point to the repository system.

Author:
Benjamin Bentmann

Method Summary
 CollectResult collectDependencies(RepositorySystemSession session, CollectRequest request)
          Collects the transitive dependencies of an artifact and builds a dependency graph.
 DeployResult deploy(RepositorySystemSession session, DeployRequest request)
          Uploads a collection of artifacts and their accompanying metadata to a remote repository.
 InstallResult install(RepositorySystemSession session, InstallRequest request)
          Installs a collection of artifacts and their accompanying metadata to the local repository.
 LocalRepositoryManager newLocalRepositoryManager(LocalRepository localRepository)
          Creates a new manager for the specified local repository.
 ArtifactDescriptorResult readArtifactDescriptor(RepositorySystemSession session, ArtifactDescriptorRequest request)
          Gets information about an artifact like its direct dependencies.
 ArtifactResult resolveArtifact(RepositorySystemSession session, ArtifactRequest request)
          Resolves the paths for an artifact.
 java.util.List<ArtifactResult> resolveArtifacts(RepositorySystemSession session, java.util.Collection<? extends ArtifactRequest> requests)
          Resolves the paths for a collection of artifacts.
 java.util.List<ArtifactResult> resolveDependencies(RepositorySystemSession session, CollectRequest request, DependencyFilter filter)
          Collects the transitive dependencies of an artifact and resolves the paths for the artifacts referenced by the specified dependency graph.
 java.util.List<ArtifactResult> resolveDependencies(RepositorySystemSession session, DependencyNode node, DependencyFilter filter)
          Resolves the paths for the artifacts referenced by the specified dependency graph.
 java.util.List<MetadataResult> resolveMetadata(RepositorySystemSession session, java.util.Collection<? extends MetadataRequest> requests)
          Resolves the paths for a collection of metadata.
 VersionResult resolveVersion(RepositorySystemSession session, VersionRequest request)
          Resolves an artifact's meta version (if any) to a concrete version.
 VersionRangeResult resolveVersionRange(RepositorySystemSession session, VersionRangeRequest request)
          Expands a version range to a list of matching versions, in ascending order.
 

Method Detail

resolveVersionRange

VersionRangeResult resolveVersionRange(RepositorySystemSession session,
                                       VersionRangeRequest request)
                                       throws VersionRangeResolutionException
Expands a version range to a list of matching versions, in ascending order. For example, resolves "[3.8,4.0)" to ["3.8", "3.8.1", "3.8.2"].

Parameters:
session - The repository session, must not be null.
request - The version range request, must not be null
Returns:
The version range result, never null.
Throws:
VersionRangeResolutionException - If the requested range could not be parsed. Note that an empty range does not raise an exception.

resolveVersion

VersionResult resolveVersion(RepositorySystemSession session,
                             VersionRequest request)
                             throws VersionResolutionException
Resolves an artifact's meta version (if any) to a concrete version. For example, resolves "1.0-SNAPSHOT" to "1.0-20090208.132618-23" or "RELEASE"/"LATEST" to "2.0".

Parameters:
session - The repository session, must not be null.
request - The version request, must not be null
Returns:
The version result, never null.
Throws:
VersionResolutionException - If the metaversion could not be resolved.

readArtifactDescriptor

ArtifactDescriptorResult readArtifactDescriptor(RepositorySystemSession session,
                                                ArtifactDescriptorRequest request)
                                                throws ArtifactDescriptorException
Gets information about an artifact like its direct dependencies.

Parameters:
session - The repository session, must not be null.
request - The descriptor request, must not be null
Returns:
The descriptor result, never null.
Throws:
ArtifactDescriptorException - If the artifact descriptor could not be read.
See Also:
RepositorySystemSession.isIgnoreInvalidArtifactDescriptor(), RepositorySystemSession.isIgnoreMissingArtifactDescriptor()

collectDependencies

CollectResult collectDependencies(RepositorySystemSession session,
                                  CollectRequest request)
                                  throws DependencyCollectionException
Collects the transitive dependencies of an artifact and builds a dependency graph.

Parameters:
session - The repository session, must not be null.
request - The collection request, must not be null
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.getDependencyGraphTransformer()

resolveDependencies

java.util.List<ArtifactResult> resolveDependencies(RepositorySystemSession session,
                                                   DependencyNode node,
                                                   DependencyFilter filter)
                                                   throws ArtifactResolutionException
Resolves the paths for the artifacts referenced by the specified dependency graph. The dependency graph will be updated to reflect each successfully resolved artifact. Artifacts will be downloaded if necessary. Artifacts that are already resolved will be skipped and are not re-resolved.

Parameters:
session - The repository session, must not be null.
node - The root node of the dependency graph whose artifacts shall be resolved, must not be null
filter - The node filter to use to select the actual nodes to resolve, may be null to resolve all nodes.
Returns:
The resolution results, never null.
Throws:
ArtifactResolutionException - If any artifact could not be resolved.
See Also:
Artifact.getFile()

resolveDependencies

java.util.List<ArtifactResult> resolveDependencies(RepositorySystemSession session,
                                                   CollectRequest request,
                                                   DependencyFilter filter)
                                                   throws DependencyCollectionException,
                                                          ArtifactResolutionException
Collects the transitive dependencies of an artifact and resolves the paths for the artifacts referenced by the specified dependency graph. This is a convenience method that combines collectDependencies(RepositorySystemSession, CollectRequest) and resolveDependencies(RepositorySystemSession, DependencyNode, DependencyFilter).

Parameters:
session - The repository session, must not be null.
request - The collection request, must not be null
filter - The node filter to use to select the actual nodes to resolve, may be null to resolve all nodes.
Returns:
The resolution results, never null.
Throws:
DependencyCollectionException - If the dependency tree could not be built.
ArtifactResolutionException - If any artifact could not be resolved.

resolveArtifact

ArtifactResult resolveArtifact(RepositorySystemSession session,
                               ArtifactRequest request)
                               throws ArtifactResolutionException
Resolves the paths for an artifact. The Artifact will be downloaded if necessary. An artifacts that is already resolved will be skipped and is not re-resolved.

Parameters:
session - The repository session, must not be null.
request - The resolution request, must not be null
Returns:
The resolution result, never null.
Throws:
ArtifactResolutionException - If any artifact could not be resolved.
See Also:
Artifact.getFile()

resolveArtifacts

java.util.List<ArtifactResult> resolveArtifacts(RepositorySystemSession session,
                                                java.util.Collection<? extends ArtifactRequest> requests)
                                                throws ArtifactResolutionException
Resolves the paths for a collection of artifacts. Artifacts will be downloaded if necessary. Artifacts that are already resolved will be skipped and are not re-resolved.

Parameters:
session - The repository session, must not be null.
requests - The resolution requests, must not be null
Returns:
The resolution results (in request order), never null.
Throws:
ArtifactResolutionException - If any artifact could not be resolved.
See Also:
Artifact.getFile()

resolveMetadata

java.util.List<MetadataResult> resolveMetadata(RepositorySystemSession session,
                                               java.util.Collection<? extends MetadataRequest> requests)
Resolves the paths for a collection of metadata. Metadata will be downloaded if necessary.

Parameters:
session - The repository session, must not be null.
requests - The resolution requests, must not be null
Returns:
The resolution results (in request order), never null.
See Also:
Metadata.getFile()

install

InstallResult install(RepositorySystemSession session,
                      InstallRequest request)
                      throws InstallationException
Installs a collection of artifacts and their accompanying metadata to the local repository.

Parameters:
session - The repository session, must not be null.
request - The installation request, must not be null.
Returns:
The installation result, never null.
Throws:
InstallationException - If any artifact/metadata from the request could not be installed.

deploy

DeployResult deploy(RepositorySystemSession session,
                    DeployRequest request)
                    throws DeploymentException
Uploads a collection of artifacts and their accompanying metadata to a remote repository.

Parameters:
session - The repository session, must not be null.
request - The deployment request, must not be null.
Returns:
The deployment result, never null.
Throws:
DeploymentException - If any artifact/metadata from the request could not be deployed.

newLocalRepositoryManager

LocalRepositoryManager newLocalRepositoryManager(LocalRepository localRepository)
Creates a new manager for the specified local repository. If the specified local repository has no type, the default repository type will be used.

Parameters:
localRepository - The local repository to create a manager for, must not be null.
Returns:
The local repository manager, never null.
Throws:
java.lang.IllegalArgumentException - If the specified repository type is not recognized or no base directory is given.


Copyright © 2010 Sonatype, Inc.. All Rights Reserved.