@Singleton @Named public final class DefaultTransporterProvider extends java.lang.Object implements TransporterProvider, Service
Modifier and Type | Field and Description |
---|---|
private java.util.Collection<TransporterFactory> |
factories |
private static org.slf4j.Logger |
LOGGER |
Constructor and Description |
---|
DefaultTransporterProvider() |
DefaultTransporterProvider(java.util.Set<TransporterFactory> transporterFactories) |
Modifier and Type | Method and Description |
---|---|
DefaultTransporterProvider |
addTransporterFactory(TransporterFactory factory) |
void |
initService(ServiceLocator locator)
Provides the opportunity to initialize this service and to acquire other services for its operation from the
locator.
|
Transporter |
newTransporter(RepositorySystemSession session,
RemoteRepository repository)
Tries to create a transporter for the specified remote repository.
|
DefaultTransporterProvider |
setTransporterFactories(java.util.Collection<TransporterFactory> factories) |
private static final org.slf4j.Logger LOGGER
private java.util.Collection<TransporterFactory> factories
public DefaultTransporterProvider()
@Inject DefaultTransporterProvider(java.util.Set<TransporterFactory> transporterFactories)
public void initService(ServiceLocator locator)
Service
initService
in interface Service
locator
- The service locator, must not be null
.public DefaultTransporterProvider addTransporterFactory(TransporterFactory factory)
public DefaultTransporterProvider setTransporterFactories(java.util.Collection<TransporterFactory> factories)
public Transporter newTransporter(RepositorySystemSession session, RemoteRepository repository) throws NoTransporterException
TransporterProvider
newTransporter
in interface TransporterProvider
session
- The repository system session from which to configure the transporter, must not be null
.repository
- The remote repository to create a transporter for, must not be null
.null
.NoTransporterException
- If none of the installed transporter factories can provide a transporter for the
specified remote repository.