Class DefaultSessionBuilder
- All Implemented Interfaces:
RepositorySystemSession.SessionBuilder
-
Constructor Summary
ConstructorDescriptionDefaultSessionBuilder
(RepositorySystem repositorySystem, RepositorySystemLifecycle repositorySystemLifecycle, Supplier<String> sessionIdSupplier) Constructor for "top level" builders. -
Method Summary
Modifier and TypeMethodDescriptionbuild()
Creates a session instance.setArtifactDescriptorPolicy
(ArtifactDescriptorPolicy artifactDescriptorPolicy) Sets the policy which controls how errors related to reading artifact descriptors should be handled.setArtifactTypeRegistry
(ArtifactTypeRegistry artifactTypeRegistry) Sets the registry of artifact types recognized by this session.setArtifactUpdatePolicy
(String artifactUpdatePolicy) Sets the global artifact update policy.setAuthenticationSelector
(AuthenticationSelector authenticationSelector) Sets the authentication selector to use for repositories discovered in artifact descriptors.setCache
(RepositoryCache cache) Sets the cache the repository system may use to save data for future reuse during the session.setChecksumPolicy
(String checksumPolicy) Sets the global checksum policy.setConfigProperties
(Map<?, ?> configProperties) Sets the configuration properties used to tweak internal aspects of the repository system (e.g.setConfigProperty
(String key, Object value) Sets the specified configuration property.setData
(SessionData data) Sets the custom data associated with this session.setDependencyGraphTransformer
(DependencyGraphTransformer dependencyGraphTransformer) Sets the dependency graph transformer to use for building dependency graphs.setDependencyManager
(DependencyManager dependencyManager) Sets the dependency manager to use for building dependency graphs.setDependencySelector
(DependencySelector dependencySelector) Sets the dependency selector to use for building dependency graphs.setDependencyTraverser
(DependencyTraverser dependencyTraverser) Sets the dependency traverser to use for building dependency graphs.setIgnoreArtifactDescriptorRepositories
(boolean ignoreArtifactDescriptorRepositories) Controls whether repositories declared in artifact descriptors should be ignored during transitive dependency collection.setLocalRepositoryManager
(LocalRepositoryManager localRepositoryManager) Sets the local repository manager used during this session.setMetadataUpdatePolicy
(String metadataUpdatePolicy) Sets the global metadata update policy.setMirrorSelector
(MirrorSelector mirrorSelector) Sets the mirror selector to use for repositories discovered in artifact descriptors.setOffline
(boolean offline) Controls whether the repository system operates in offline mode and avoids/refuses any access to remote repositories.setProxySelector
(ProxySelector proxySelector) Sets the proxy selector to use for repositories discovered in artifact descriptors.setRepositoryCacheSupplier
(Supplier<RepositoryCache> cacheSupplier) Sets the cache supplier for the repository system may use to save data for future reuse during the session.setRepositoryListener
(RepositoryListener repositoryListener) Sets the listener being notified of actions in the repository system.setResolutionErrorPolicy
(ResolutionErrorPolicy resolutionErrorPolicy) Sets the policy which controls whether resolutions errors from remote repositories should be cached.setSessionDataSupplier
(Supplier<SessionData> dataSupplier) Sets the custom session data supplier associated with this session.setSystemProperties
(Map<?, ?> systemProperties) Sets the system properties to use, e.g.setSystemProperty
(String key, String value) Sets the specified system property.setTransferListener
(TransferListener transferListener) Sets the listener being notified of uploads/downloads by the repository system.setUpdatePolicy
(String updatePolicy) Sets the global update policy.setUserProperties
(Map<?, ?> userProperties) Sets the user properties to use, e.g.setUserProperty
(String key, String value) Sets the specified user property.setVersionFilter
(VersionFilter versionFilter) Sets the version filter to use for building dependency graphs.setWorkspaceReader
(WorkspaceReader workspaceReader) Sets the workspace reader used during this session.withLocalRepositories
(List<LocalRepository> localRepositories) Shortcut method to set up local repository manager directly onto builder.withLocalRepositories
(LocalRepository... localRepositories) Shortcut method to set up local repository manager directly onto builder.withLocalRepositoryBaseDirectories
(File... baseDirectories) Shortcut method to set up local repository manager directly onto builder.withLocalRepositoryBaseDirectories
(List<File> baseDirectories) Shortcut method to set up local repository manager directly onto builder.Shortcut method to shallow-copy passed in session into current builder.
-
Constructor Details
-
DefaultSessionBuilder
public DefaultSessionBuilder(RepositorySystem repositorySystem, RepositorySystemLifecycle repositorySystemLifecycle, Supplier<String> sessionIdSupplier) Constructor for "top level" builders.
-
-
Method Details
-
setOffline
Description copied from interface:RepositorySystemSession.SessionBuilder
Controls whether the repository system operates in offline mode and avoids/refuses any access to remote repositories.- Specified by:
setOffline
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
offline
-true
if the repository system is in offline mode,false
otherwise.- Returns:
- This session for chaining, never
null
.
-
setIgnoreArtifactDescriptorRepositories
public DefaultSessionBuilder setIgnoreArtifactDescriptorRepositories(boolean ignoreArtifactDescriptorRepositories) Description copied from interface:RepositorySystemSession.SessionBuilder
Controls 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.- Specified by:
setIgnoreArtifactDescriptorRepositories
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
ignoreArtifactDescriptorRepositories
-true
to ignore additional repositories from artifact descriptors,false
to merge those with the originally specified repositories.- Returns:
- This session for chaining, never
null
.
-
setResolutionErrorPolicy
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the policy which controls whether resolutions errors from remote repositories should be cached.- Specified by:
setResolutionErrorPolicy
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
resolutionErrorPolicy
- The resolution error policy for this session, may benull
if resolution errors should generally not be cached.- Returns:
- This session for chaining, never
null
.
-
setArtifactDescriptorPolicy
public DefaultSessionBuilder setArtifactDescriptorPolicy(ArtifactDescriptorPolicy artifactDescriptorPolicy) Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the policy which controls how errors related to reading artifact descriptors should be handled.- Specified by:
setArtifactDescriptorPolicy
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
artifactDescriptorPolicy
- The descriptor error policy for this session, may benull
if descriptor errors should generally not be tolerated.- Returns:
- This session for chaining, never
null
.
-
setChecksumPolicy
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the global checksum policy. If set, the global checksum policy overrides the checksum policies of the remote repositories being used for resolution.- Specified by:
setChecksumPolicy
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
checksumPolicy
- The global checksum policy, may benull
/empty to apply the per-repository policies.- Returns:
- This session for chaining, never
null
. - See Also:
-
setUpdatePolicy
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the global update policy. If set, the global update policy overrides the update policies of the remote repositories being used for resolution.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
RepositorySystemSession.getUpdatePolicy()
) or also distinguish between artifact and metadata update policies (and use other methods), but should not mix the two!- Specified by:
setUpdatePolicy
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
updatePolicy
- The global update policy, may benull
/empty to apply the per-repository policies.- Returns:
- This session for chaining, never
null
. - See Also:
-
setArtifactUpdatePolicy
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the global artifact update policy. If set, the global update policy overrides the artifact update policies of the remote repositories being used for resolution.- Specified by:
setArtifactUpdatePolicy
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
artifactUpdatePolicy
- The global update policy, may benull
/empty to apply the per-repository policies.- Returns:
- This session for chaining, never
null
. - See Also:
-
setMetadataUpdatePolicy
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the global metadata update policy. If set, the global update policy overrides the metadata update policies of the remote repositories being used for resolution.- Specified by:
setMetadataUpdatePolicy
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
metadataUpdatePolicy
- The global update policy, may benull
/empty to apply the per-repository policies.- Returns:
- This session for chaining, never
null
. - See Also:
-
setLocalRepositoryManager
public DefaultSessionBuilder setLocalRepositoryManager(LocalRepositoryManager localRepositoryManager) Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the local repository manager used during this session. Note: Eventually, a valid session must have a local repository manager set.- Specified by:
setLocalRepositoryManager
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
localRepositoryManager
- The local repository manager used during this session, may benull
.- Returns:
- This session for chaining, never
null
.
-
setWorkspaceReader
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the workspace reader used during this session. If set, the workspace reader will usually be consulted first to resolve artifacts.- Specified by:
setWorkspaceReader
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
workspaceReader
- The workspace reader for this session, may benull
if none.- Returns:
- This session for chaining, never
null
.
-
setRepositoryListener
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the listener being notified of actions in the repository system.- Specified by:
setRepositoryListener
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
repositoryListener
- The repository listener, may benull
if none.- Returns:
- This session for chaining, never
null
.
-
setTransferListener
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the listener being notified of uploads/downloads by the repository system.- Specified by:
setTransferListener
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
transferListener
- The transfer listener, may benull
if none.- Returns:
- This session for chaining, never
null
.
-
setSystemProperties
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets 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.Note: System properties are of type
Map<String, String>
and any key-value pair in the input map that doesn't match this type will be silently ignored.- Specified by:
setSystemProperties
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
systemProperties
- The system properties, may benull
or empty if none.- Returns:
- This session for chaining, never
null
.
-
setSystemProperty
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the specified system property.- Specified by:
setSystemProperty
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
key
- The property key, must not benull
.value
- The property value, may benull
to remove/unset the property.- Returns:
- This session for chaining, never
null
.
-
setUserProperties
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets 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 in case of conflicts.Note: User properties are of type
Map<String, String>
and any key-value pair in the input map that doesn't match this type will be silently ignored.- Specified by:
setUserProperties
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
userProperties
- The user properties, may benull
or empty if none.- Returns:
- This session for chaining, never
null
.
-
setUserProperty
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the specified user property.- Specified by:
setUserProperty
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
key
- The property key, must not benull
.value
- The property value, may benull
to remove/unset the property.- Returns:
- This session for chaining, never
null
.
-
setConfigProperties
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the configuration properties used to tweak internal aspects of the repository system (e.g. thread pooling, connector-specific behavior, etc.).Note: Configuration properties are of type
Map<String, Object>
and any key-value pair in the input map that doesn't match this type will be silently ignored.- Specified by:
setConfigProperties
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
configProperties
- The configuration properties, may benull
or empty if none.- Returns:
- This session for chaining, never
null
.
-
setConfigProperty
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the specified configuration property.- Specified by:
setConfigProperty
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
key
- The property key, must not benull
.value
- The property value, may benull
to remove/unset the property.- Returns:
- This session for chaining, never
null
.
-
setMirrorSelector
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets 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.- Specified by:
setMirrorSelector
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
mirrorSelector
- The mirror selector to use, may benull
.- Returns:
- This session for chaining, never
null
.
-
setProxySelector
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets 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.- Specified by:
setProxySelector
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
proxySelector
- The proxy selector to use, may benull
.- Returns:
- This session for chaining, never
null
. - See Also:
-
setAuthenticationSelector
public DefaultSessionBuilder setAuthenticationSelector(AuthenticationSelector authenticationSelector) Description copied from interface:RepositorySystemSession.SessionBuilder
Sets 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.- Specified by:
setAuthenticationSelector
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
authenticationSelector
- The authentication selector to use, may benull
.- Returns:
- This session for chaining, never
null
. - See Also:
-
setArtifactTypeRegistry
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the registry of artifact types recognized by this session.- Specified by:
setArtifactTypeRegistry
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
artifactTypeRegistry
- The artifact type registry, may benull
.- Returns:
- This session for chaining, never
null
.
-
setDependencyTraverser
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the dependency traverser to use for building dependency graphs.- Specified by:
setDependencyTraverser
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
dependencyTraverser
- The dependency traverser to use for building dependency graphs, may benull
.- Returns:
- This session for chaining, never
null
.
-
setDependencyManager
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the dependency manager to use for building dependency graphs.- Specified by:
setDependencyManager
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
dependencyManager
- The dependency manager to use for building dependency graphs, may benull
.- Returns:
- This session for chaining, never
null
.
-
setDependencySelector
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the dependency selector to use for building dependency graphs.- Specified by:
setDependencySelector
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
dependencySelector
- The dependency selector to use for building dependency graphs, may benull
.- Returns:
- This session for chaining, never
null
.
-
setVersionFilter
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the version filter to use for building dependency graphs.- Specified by:
setVersionFilter
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
versionFilter
- The version filter to use for building dependency graphs, may benull
to not filter versions.- Returns:
- This session for chaining, never
null
.
-
setDependencyGraphTransformer
public DefaultSessionBuilder setDependencyGraphTransformer(DependencyGraphTransformer dependencyGraphTransformer) Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the dependency graph transformer to use for building dependency graphs.- Specified by:
setDependencyGraphTransformer
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
dependencyGraphTransformer
- The dependency graph transformer to use for building dependency graphs, may benull
.- Returns:
- This session for chaining, never
null
.
-
setData
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the custom data associated with this session.- Specified by:
setData
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
data
- The session data, may benull
.- Returns:
- This session for chaining, never
null
.
-
setSessionDataSupplier
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the custom session data supplier associated with this session.- Specified by:
setSessionDataSupplier
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
dataSupplier
- The session data supplier, may not benull
.- Returns:
- This session for chaining, never
null
.
-
setCache
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the cache the repository system may use to save data for future reuse during the session.- Specified by:
setCache
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
cache
- The repository cache, may benull
if none.- Returns:
- This session for chaining, never
null
.
-
setRepositoryCacheSupplier
Description copied from interface:RepositorySystemSession.SessionBuilder
Sets the cache supplier for the repository system may use to save data for future reuse during the session.- Specified by:
setRepositoryCacheSupplier
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
cacheSupplier
- The repository cache supplier, may not benull
.- Returns:
- This session for chaining, never
null
.
-
withLocalRepositoryBaseDirectories
public RepositorySystemSession.SessionBuilder withLocalRepositoryBaseDirectories(File... baseDirectories) Description copied from interface:RepositorySystemSession.SessionBuilder
Shortcut method to set up local repository manager directly onto builder. There must be at least one non-nullFile
passed in this method. In case multiple files, session builder will use chained local repository manager.- Specified by:
withLocalRepositoryBaseDirectories
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
baseDirectories
- The local repository base directories.- Returns:
- This session for chaining, never
null
. - See Also:
-
withLocalRepositoryBaseDirectories
public RepositorySystemSession.SessionBuilder withLocalRepositoryBaseDirectories(List<File> baseDirectories) Description copied from interface:RepositorySystemSession.SessionBuilder
Shortcut method to set up local repository manager directly onto builder. There must be at least one non-nullFile
present in passed in list. In case multiple files, session builder will use chained local repository manager.- Specified by:
withLocalRepositoryBaseDirectories
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
baseDirectories
- The local repository base directories.- Returns:
- This session for chaining, never
null
. - See Also:
-
withLocalRepositories
public RepositorySystemSession.SessionBuilder withLocalRepositories(LocalRepository... localRepositories) Description copied from interface:RepositorySystemSession.SessionBuilder
Shortcut method to set up local repository manager directly onto builder. There must be at least one non-nullLocalRepository
passed in this method. In case multiple local repositories, session builder will use chained local repository manager.- Specified by:
withLocalRepositories
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
localRepositories
- The local repositories.- Returns:
- This session for chaining, never
null
.
-
withLocalRepositories
public RepositorySystemSession.SessionBuilder withLocalRepositories(List<LocalRepository> localRepositories) Description copied from interface:RepositorySystemSession.SessionBuilder
Shortcut method to set up local repository manager directly onto builder. There must be at least one non-nullLocalRepository
present in passed in list. In case multiple local repositories, session builder will use chained local repository manager.- Specified by:
withLocalRepositories
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
localRepositories
- The local repositories.- Returns:
- This session for chaining, never
null
.
-
withRepositorySystemSession
public RepositorySystemSession.SessionBuilder withRepositorySystemSession(RepositorySystemSession session) Description copied from interface:RepositorySystemSession.SessionBuilder
Shortcut method to shallow-copy passed in session into current builder.- Specified by:
withRepositorySystemSession
in interfaceRepositorySystemSession.SessionBuilder
- Parameters:
session
- The session to shallow-copy from.- Returns:
- This session for chaining, never
null
.
-
build
Description copied from interface:RepositorySystemSession.SessionBuilder
Creates a session instance.- Specified by:
build
in interfaceRepositorySystemSession.SessionBuilder
-