Class WagonTransporterFactory

  • All Implemented Interfaces:
    TransporterFactory, Service

    @Named("wagon")
    public final class WagonTransporterFactory
    extends java.lang.Object
    implements TransporterFactory, Service
    A transporter factory using Apache Maven Wagon. Note that this factory merely serves as an adapter to the Wagon API and by itself does not provide any transport services unless one or more wagon implementations are registered with the WagonProvider.
    • Constructor Detail

      • WagonTransporterFactory

        public WagonTransporterFactory()
        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

      • initService

        public void initService​(ServiceLocator locator)
        Description copied from interface: Service
        Provides the opportunity to initialize this service and to acquire other services for its operation from the locator. A service must not save the reference to the provided service locator.
        Specified by:
        initService in interface Service
        Parameters:
        locator - The service locator, must not be null.
      • setWagonProvider

        public WagonTransporterFactory setWagonProvider​(WagonProvider wagonProvider)
        Sets the wagon provider to use to acquire and release wagon instances.
        Parameters:
        wagonProvider - The wagon provider to use, may be null.
        Returns:
        This factory for chaining, never null.
      • setWagonConfigurator

        public WagonTransporterFactory setWagonConfigurator​(WagonConfigurator wagonConfigurator)
        Sets the wagon configurator to use to apply provider-specific configuration to wagon instances.
        Parameters:
        wagonConfigurator - The wagon configurator to use, may be null.
        Returns:
        This factory for chaining, never null.
      • 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 interface TransporterFactory
        Returns:
        The priority of this factory.
      • setPriority

        public WagonTransporterFactory 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 inspect RemoteRepository.getProtocol() to determine whether it can handle a repository.
        Specified by:
        newInstance in interface TransporterFactory
        Parameters:
        session - The repository system session from which to configure the transporter, must not be null. In particular, a transporter should obey the timeouts configured for the session.
        repository - The remote repository to create a transporter for, must not be null.
        Returns:
        The transporter for the given repository, never null.
        Throws:
        NoTransporterException - If the factory cannot create a transporter for the specified remote repository.