Class ClasspathTransporterFactory
- java.lang.Object
-
- org.eclipse.aether.transport.classpath.ClasspathTransporterFactory
-
- All Implemented Interfaces:
TransporterFactory
@Named("classpath") public final class ClasspathTransporterFactory extends Object implements TransporterFactory
A transporter factory for repositories using theclasspath:
protocol. As example, getting an item namedsome/file.txt
from a repository with the URLclasspath:/base/dir
results in retrieving the resourcebase/dir/some/file.txt
from the classpath. The classpath to load the resources from is given via aClassLoader
that can be configured via the configuration propertyCONFIG_PROP_CLASS_LOADER
.Note: Such repositories are read-only and uploads to them are generally not supported.
-
-
Field Summary
Fields Modifier and Type Field Description static String
CONFIG_PROP_CLASS_LOADER
The key in the repository session'sconfiguration properties
used to store aClassLoader
from which resources should be retrieved.
-
Constructor Summary
Constructors Constructor Description ClasspathTransporterFactory()
Creates an (uninitialized) instance of this transporter factory.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description float
getPriority()
The priority of this factory.Transporter
newInstance(RepositorySystemSession session, RemoteRepository repository)
Tries to create a transporter for the specified remote repository.ClasspathTransporterFactory
setPriority(float priority)
Sets the priority of this component.
-
-
-
Field Detail
-
CONFIG_PROP_CLASS_LOADER
public static final String CONFIG_PROP_CLASS_LOADER
The key in the repository session'sconfiguration properties
used to store aClassLoader
from which resources should be retrieved. If unspecified, thecontext class loader
of the current thread will be used.- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ClasspathTransporterFactory
public ClasspathTransporterFactory()
Creates an (uninitialized) instance of this transporter factory. Note: In case of manual instantiation by clients, the new factory needs to be configured via its various mutators before first use or runtime errors will occur.
-
-
Method Detail
-
getPriority
public float getPriority()
Description copied from interface:TransporterFactory
The priority of this factory. When multiple factories can handle a given repository, factories with higher priority are preferred over those with lower priority.- Specified by:
getPriority
in interfaceTransporterFactory
- Returns:
- The priority of this factory.
-
setPriority
public ClasspathTransporterFactory setPriority(float priority)
Sets the priority of this component.- Parameters:
priority
- The priority.- Returns:
- This component for chaining, never
null
.
-
newInstance
public Transporter newInstance(RepositorySystemSession session, RemoteRepository repository) throws NoTransporterException
Description copied from interface:TransporterFactory
Tries to create a transporter for the specified remote repository. Typically, a factory will inspectRemoteRepository.getProtocol()
to determine whether it can handle a repository.- Specified by:
newInstance
in interfaceTransporterFactory
- Parameters:
session
- The repository system session from which to configure the transporter, must not benull
. In particular, a transporter should obey the timeouts configured for the session.repository
- The remote repository to create a transporter for, must not benull
.- Returns:
- The transporter for the given repository, never
null
. - Throws:
NoTransporterException
- If the factory cannot create a transporter for the specified remote repository.
-
-