Package org.eclipse.aether
Interface RepositorySystemSession
- All Known Subinterfaces:
RepositorySystemSession.CloseableSession
- All Known Implementing Classes:
AbstractForwardingRepositorySystemSession
,DefaultRepositorySystemSession
public interface RepositorySystemSession
Defines settings and components that control the repository system. Once initialized, the session object itself is
supposed to be immutable and hence can safely be shared across an entire application and any concurrent threads
reading it. Components that wish to tweak some aspects of an existing session should use the copy constructor of
DefaultRepositorySystemSession
and its mutators to derive a custom session.- Restriction:
- This interface is not intended to be extended by clients.
- Restriction:
- This interface is not intended to be implemented by clients.
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic interface
Immutable session that is closeable, should be handled as a resource.static interface
Builder for buildingRepositorySystemSession.CloseableSession
instances. -
Method Summary
Modifier and TypeMethodDescriptionboolean
addOnSessionEndedHandler
(Runnable handler) Registers a handler to execute when this session closed.Gets the policy which controls how errors related to reading artifact descriptors should be handled.Gets the registry of artifact types recognized by this session, for instance when processing artifact descriptors.Gets the global artifact update policy.Gets the authentication selector to use for repositories discovered in artifact descriptors.getCache()
Gets the cache the repository system may use to save data for future reuse during the session.Gets the global checksum policy.Gets the configuration properties used to tweak internal aspects of the repository system (e.g.getData()
Gets the custom data associated with this session.Gets the dependency graph transformer to use for building dependency graphs.Gets the dependency manager to use for building dependency graphs.Gets the dependency selector to use for building dependency graphs.Gets the dependency traverser to use for building dependency graphs.Gets the local repository used during this session.Gets the local repository manager used during this session.Gets the global metadata update policy.Gets the mirror selector to use for repositories discovered in artifact descriptors.Gets the proxy selector to use for repositories discovered in artifact descriptors.Gets the listener being notified of actions in the repository system.Gets the policy which controls whether resolutions errors from remote repositories should be cached.Gets the system properties to use, e.g.Gets the listener being notified of uploads/downloads by the repository system.Gets the global update policy, ornull
if not set.Gets the user properties to use, e.g.Gets the version filter to use for building dependency graphs.Gets the workspace reader used during this session.boolean
Indicates whether repositories declared in artifact descriptors should be ignored during transitive dependency collection.boolean
Indicates whether the repository system operates in offline mode and avoids/refuses any access to remote repositories.
-
Method Details
-
isOffline
boolean isOffline()Indicates whether the repository system operates in offline mode and avoids/refuses any access to remote repositories.- Returns:
true
if the repository system is in offline mode,false
otherwise.
-
isIgnoreArtifactDescriptorRepositories
boolean isIgnoreArtifactDescriptorRepositories()Indicates whether repositories declared in artifact descriptors should be ignored during transitive dependency collection. If enabled, only the repositories originally provided with the collect request will be considered.- Returns:
true
if additional repositories from artifact descriptors are ignored,false
to merge those with the originally specified repositories.
-
getResolutionErrorPolicy
Gets the policy which controls whether resolutions errors from remote repositories should be cached.- Returns:
- The resolution error policy for this session or
null
if resolution errors should generally not be cached.
-
getArtifactDescriptorPolicy
Gets the policy which controls how errors related to reading artifact descriptors should be handled.- Returns:
- The descriptor error policy for this session or
null
if descriptor errors should generally not be tolerated.
-
getChecksumPolicy
Gets the global checksum policy. If set, the global checksum policy overrides the checksum policies of the remote repositories being used for resolution.- Returns:
- The global checksum policy or
null
/empty if not set and the per-repository policies apply. - See Also:
-
getUpdatePolicy
Gets the global update policy, ornull
if not set.This method is meant for code that does not want to distinguish between artifact and metadata policies. Note: applications should either use get/set updatePolicy (this method and
DefaultRepositorySystemSession.setUpdatePolicy(String)
) or also distinguish between artifact and metadata update policies (and use other methods), but should not mix the two!- See Also:
-
getArtifactUpdatePolicy
Gets the global artifact update policy. If set, the global update policy overrides the update policies of the remote repositories being used for resolution.- Returns:
- The global update policy or
null
/empty if not set and the per-repository policies apply. - Since:
- 2.0.0
- See Also:
-
getMetadataUpdatePolicy
Gets the global metadata update policy. If set, the global update policy overrides the update policies of the remote repositories being used for resolution.- Returns:
- The global update policy or
null
/empty if not set and the per-repository policies apply. - Since:
- 2.0.0
- See Also:
-
getLocalRepository
Gets the local repository used during this session. This is a convenience method forLocalRepositoryManager.getRepository()
.- Returns:
- The local repository being during this session, never
null
.
-
getLocalRepositoryManager
Gets the local repository manager used during this session.- Returns:
- The local repository manager used during this session, never
null
.
-
getWorkspaceReader
Gets the workspace reader used during this session. If set, the workspace reader will usually be consulted first to resolve artifacts.- Returns:
- The workspace reader for this session or
null
if none.
-
getRepositoryListener
Gets the listener being notified of actions in the repository system.- Returns:
- The repository listener or
null
if none.
-
getTransferListener
Gets the listener being notified of uploads/downloads by the repository system.- Returns:
- The transfer listener or
null
if none.
-
getSystemProperties
Gets the system properties to use, e.g. for processing of artifact descriptors. System properties are usually collected from the runtime environment likeSystem.getProperties()
and environment variables.- Returns:
- The (read-only) system properties, never
null
.
-
getUserProperties
Gets the user properties to use, e.g. for processing of artifact descriptors. User properties are similar to system properties but are set on the discretion of the user and hence are considered of higher priority than system properties.- Returns:
- The (read-only) user properties, never
null
.
-
getConfigProperties
Gets the configuration properties used to tweak internal aspects of the repository system (e.g. thread pooling, connector-specific behavior, etc.)- Returns:
- The (read-only) configuration properties, never
null
. - See Also:
-
getMirrorSelector
Gets the mirror selector to use for repositories discovered in artifact descriptors. Note that this selector is not used for remote repositories which are passed as request parameters to the repository system, those repositories are supposed to denote the effective repositories.- Returns:
- The mirror selector to use, never
null
. - See Also:
-
getProxySelector
Gets the proxy selector to use for repositories discovered in artifact descriptors. Note that this selector is not used for remote repositories which are passed as request parameters to the repository system, those repositories are supposed to have their proxy (if any) already set.- Returns:
- The proxy selector to use, never
null
. - See Also:
-
getAuthenticationSelector
Gets the authentication selector to use for repositories discovered in artifact descriptors. Note that this selector is not used for remote repositories which are passed as request parameters to the repository system, those repositories are supposed to have their authentication (if any) already set.- Returns:
- The authentication selector to use, never
null
. - See Also:
-
getArtifactTypeRegistry
Gets the registry of artifact types recognized by this session, for instance when processing artifact descriptors.- Returns:
- The artifact type registry, never
null
.
-
getDependencyTraverser
Gets the dependency traverser to use for building dependency graphs.- Returns:
- The dependency traverser to use for building dependency graphs or
null
if dependencies are unconditionally traversed.
-
getDependencyManager
Gets the dependency manager to use for building dependency graphs.- Returns:
- The dependency manager to use for building dependency graphs or
null
if dependency management is not performed.
-
getDependencySelector
Gets the dependency selector to use for building dependency graphs.- Returns:
- The dependency selector to use for building dependency graphs or
null
if dependencies are unconditionally included.
-
getVersionFilter
Gets the version filter to use for building dependency graphs.- Returns:
- The version filter to use for building dependency graphs or
null
if versions aren't filtered.
-
getDependencyGraphTransformer
Gets the dependency graph transformer to use for building dependency graphs.- Returns:
- The dependency graph transformer to use for building dependency graphs or
null
if none.
-
getData
Gets the custom data associated with this session.- Returns:
- The session data, never
null
.
-
getCache
Gets the cache the repository system may use to save data for future reuse during the session.- Returns:
- The repository cache or
null
if none.
-
addOnSessionEndedHandler
Registers a handler to execute when this session closed.Note: Resolver 1.x sessions will not be able to register handlers. Migrate to Resolver 2.x way of handling sessions to make full use of new features. New features (like HTTP/2 transport) depend on this functionality. While they will function with Resolver 1.x sessions, they may produce resource leaks.
- Parameters:
handler
- the handler, nevernull
.- Returns:
true
if handler successfully registered,false
otherwise.- Since:
- 2.0.0
-