Class RepositorySystemSupplier

java.lang.Object
org.apache.maven.cling.invoker.mvn.RepositorySystemSupplier
All Implemented Interfaces:
Supplier<org.eclipse.aether.RepositorySystem>

public class RepositorySystemSupplier extends Object implements Supplier<org.eclipse.aether.RepositorySystem>
A simple memorizing Supplier of RepositorySystem instance, that on first call supplies lazily constructed instance, and on each subsequent call same instance. Hence, this instance should be thrown away immediately once repository system was created and there is no need for more instances. If new repository system instance needed, new instance of this class must be created. For proper shut down of returned repository system instance(s) use RepositorySystem.shutdown() method on supplied instance(s).

Since Resolver 2.0 this class offers access to various components via public getters, and allows even partial object graph construction.

Extend this class createXXX() methods and override to customize, if needed. The contract of this class makes sure that these (potentially overridden) methods are invoked only once, and instance created by those methods are memorized and kept as long as supplier instance is kept open.

This class is not thread safe and must be used from one thread only, while the constructed RepositorySystem is thread safe.

Important: Given the instance of supplier memorizes the supplier RepositorySystem instance it supplies, their lifecycle is shared as well: once supplied repository system is shut-down, this instance becomes closed as well. Any subsequent getXXX method invocation attempt will fail with IllegalStateException.

  • Constructor Details

    • RepositorySystemSupplier

      public RepositorySystemSupplier()
  • Method Details

    • getPathProcessor

      public final org.eclipse.aether.spi.io.PathProcessor getPathProcessor()
    • createPathProcessor

      protected org.eclipse.aether.spi.io.PathProcessor createPathProcessor()
    • getChecksumProcessor

      public final org.eclipse.aether.spi.io.ChecksumProcessor getChecksumProcessor()
    • createChecksumProcessor

      protected org.eclipse.aether.spi.io.ChecksumProcessor createChecksumProcessor()
    • getTrackingFileManager

      public final org.eclipse.aether.internal.impl.TrackingFileManager getTrackingFileManager()
    • createTrackingFileManager

      protected org.eclipse.aether.internal.impl.TrackingFileManager createTrackingFileManager()
    • getLocalPathComposer

      public final org.eclipse.aether.internal.impl.LocalPathComposer getLocalPathComposer()
    • createLocalPathComposer

      protected org.eclipse.aether.internal.impl.LocalPathComposer createLocalPathComposer()
    • getLocalPathPrefixComposerFactory

      public final org.eclipse.aether.internal.impl.LocalPathPrefixComposerFactory getLocalPathPrefixComposerFactory()
    • createLocalPathPrefixComposerFactory

      protected org.eclipse.aether.internal.impl.LocalPathPrefixComposerFactory createLocalPathPrefixComposerFactory()
    • getRepositorySystemLifecycle

      public final org.eclipse.aether.impl.RepositorySystemLifecycle getRepositorySystemLifecycle()
    • createRepositorySystemLifecycle

      protected org.eclipse.aether.impl.RepositorySystemLifecycle createRepositorySystemLifecycle()
    • getOfflineController

      public final org.eclipse.aether.impl.OfflineController getOfflineController()
    • createOfflineController

      protected org.eclipse.aether.impl.OfflineController createOfflineController()
    • getUpdatePolicyAnalyzer

      public final org.eclipse.aether.impl.UpdatePolicyAnalyzer getUpdatePolicyAnalyzer()
    • createUpdatePolicyAnalyzer

      protected org.eclipse.aether.impl.UpdatePolicyAnalyzer createUpdatePolicyAnalyzer()
    • getChecksumPolicyProvider

      public final org.eclipse.aether.spi.connector.checksum.ChecksumPolicyProvider getChecksumPolicyProvider()
    • createChecksumPolicyProvider

      protected org.eclipse.aether.spi.connector.checksum.ChecksumPolicyProvider createChecksumPolicyProvider()
    • getUpdateCheckManager

      public final org.eclipse.aether.impl.UpdateCheckManager getUpdateCheckManager()
    • createUpdateCheckManager

      protected org.eclipse.aether.impl.UpdateCheckManager createUpdateCheckManager()
    • getNamedLockFactories

      public final Map<String,org.eclipse.aether.named.NamedLockFactory> getNamedLockFactories()
    • createNamedLockFactories

      protected Map<String,org.eclipse.aether.named.NamedLockFactory> createNamedLockFactories()
    • getNameMappers

      public final Map<String,org.eclipse.aether.internal.impl.synccontext.named.NameMapper> getNameMappers()
    • createNameMappers

      protected Map<String,org.eclipse.aether.internal.impl.synccontext.named.NameMapper> createNameMappers()
    • getNamedLockFactoryAdapterFactory

      public final org.eclipse.aether.internal.impl.synccontext.named.NamedLockFactoryAdapterFactory getNamedLockFactoryAdapterFactory()
    • createNamedLockFactoryAdapterFactory

      protected org.eclipse.aether.internal.impl.synccontext.named.NamedLockFactoryAdapterFactory createNamedLockFactoryAdapterFactory()
    • getSyncContextFactory

      public final org.eclipse.aether.spi.synccontext.SyncContextFactory getSyncContextFactory()
    • createSyncContextFactory

      protected org.eclipse.aether.spi.synccontext.SyncContextFactory createSyncContextFactory()
    • getChecksumAlgorithmFactories

      public final Map<String,org.eclipse.aether.spi.connector.checksum.ChecksumAlgorithmFactory> getChecksumAlgorithmFactories()
    • createChecksumAlgorithmFactories

      protected Map<String,org.eclipse.aether.spi.connector.checksum.ChecksumAlgorithmFactory> createChecksumAlgorithmFactories()
    • getChecksumAlgorithmFactorySelector

      public final org.eclipse.aether.spi.connector.checksum.ChecksumAlgorithmFactorySelector getChecksumAlgorithmFactorySelector()
    • createChecksumAlgorithmFactorySelector

      protected org.eclipse.aether.spi.connector.checksum.ChecksumAlgorithmFactorySelector createChecksumAlgorithmFactorySelector()
    • getArtifactPredicateFactory

      public final org.eclipse.aether.spi.artifact.ArtifactPredicateFactory getArtifactPredicateFactory()
    • createArtifactPredicateFactory

      protected org.eclipse.aether.spi.artifact.ArtifactPredicateFactory createArtifactPredicateFactory()
    • getRepositoryLayoutFactories

      public final Map<String,org.eclipse.aether.spi.connector.layout.RepositoryLayoutFactory> getRepositoryLayoutFactories()
    • createRepositoryLayoutFactories

      protected Map<String,org.eclipse.aether.spi.connector.layout.RepositoryLayoutFactory> createRepositoryLayoutFactories()
    • getRepositoryLayoutProvider

      public final org.eclipse.aether.spi.connector.layout.RepositoryLayoutProvider getRepositoryLayoutProvider()
    • createRepositoryLayoutProvider

      protected org.eclipse.aether.spi.connector.layout.RepositoryLayoutProvider createRepositoryLayoutProvider()
    • getLocalRepositoryProvider

      public final org.eclipse.aether.impl.LocalRepositoryProvider getLocalRepositoryProvider()
    • createLocalRepositoryProvider

      protected org.eclipse.aether.impl.LocalRepositoryProvider createLocalRepositoryProvider()
    • getRemoteRepositoryManager

      public final org.eclipse.aether.impl.RemoteRepositoryManager getRemoteRepositoryManager()
    • createRemoteRepositoryManager

      protected org.eclipse.aether.impl.RemoteRepositoryManager createRemoteRepositoryManager()
    • getRemoteRepositoryFilterSources

      public final Map<String,org.eclipse.aether.spi.connector.filter.RemoteRepositoryFilterSource> getRemoteRepositoryFilterSources()
    • createRemoteRepositoryFilterSources

      protected Map<String,org.eclipse.aether.spi.connector.filter.RemoteRepositoryFilterSource> createRemoteRepositoryFilterSources()
    • getRemoteRepositoryFilterManager

      public final org.eclipse.aether.impl.RemoteRepositoryFilterManager getRemoteRepositoryFilterManager()
    • createRemoteRepositoryFilterManager

      protected org.eclipse.aether.impl.RemoteRepositoryFilterManager createRemoteRepositoryFilterManager()
    • getRepositoryListeners

      public final Map<String,org.eclipse.aether.RepositoryListener> getRepositoryListeners()
    • createRepositoryListeners

      protected Map<String,org.eclipse.aether.RepositoryListener> createRepositoryListeners()
    • getRepositoryEventDispatcher

      public final org.eclipse.aether.impl.RepositoryEventDispatcher getRepositoryEventDispatcher()
    • createRepositoryEventDispatcher

      protected org.eclipse.aether.impl.RepositoryEventDispatcher createRepositoryEventDispatcher()
    • getTrustedChecksumsSources

      public final Map<String,org.eclipse.aether.spi.checksums.TrustedChecksumsSource> getTrustedChecksumsSources()
    • createTrustedChecksumsSources

      protected Map<String,org.eclipse.aether.spi.checksums.TrustedChecksumsSource> createTrustedChecksumsSources()
    • getProvidedChecksumsSources

      public final Map<String,org.eclipse.aether.spi.checksums.ProvidedChecksumsSource> getProvidedChecksumsSources()
    • createProvidedChecksumsSources

      protected Map<String,org.eclipse.aether.spi.checksums.ProvidedChecksumsSource> createProvidedChecksumsSources()
    • getChecksumExtractorStrategies

      public final Map<String,org.eclipse.aether.spi.connector.transport.http.ChecksumExtractorStrategy> getChecksumExtractorStrategies()
    • createChecksumExtractorStrategies

      protected Map<String,org.eclipse.aether.spi.connector.transport.http.ChecksumExtractorStrategy> createChecksumExtractorStrategies()
    • getChecksumExtractor

      public final org.eclipse.aether.spi.connector.transport.http.ChecksumExtractor getChecksumExtractor()
    • createChecksumExtractor

      protected org.eclipse.aether.spi.connector.transport.http.ChecksumExtractor createChecksumExtractor()
    • getTransporterFactories

      public final Map<String,org.eclipse.aether.spi.connector.transport.TransporterFactory> getTransporterFactories()
    • createTransporterFactories

      protected Map<String,org.eclipse.aether.spi.connector.transport.TransporterFactory> createTransporterFactories()
    • getTransporterProvider

      public final org.eclipse.aether.spi.connector.transport.TransporterProvider getTransporterProvider()
    • createTransporterProvider

      protected org.eclipse.aether.spi.connector.transport.TransporterProvider createTransporterProvider()
    • getRepositoryConnectorFactories

      public final Map<String,org.eclipse.aether.spi.connector.RepositoryConnectorFactory> getRepositoryConnectorFactories()
    • createRepositoryConnectorFactories

      protected Map<String,org.eclipse.aether.spi.connector.RepositoryConnectorFactory> createRepositoryConnectorFactories()
    • getRepositoryConnectorProvider

      public final org.eclipse.aether.impl.RepositoryConnectorProvider getRepositoryConnectorProvider()
    • createRepositoryConnectorProvider

      protected org.eclipse.aether.impl.RepositoryConnectorProvider createRepositoryConnectorProvider()
    • getInstaller

      public final org.eclipse.aether.impl.Installer getInstaller()
    • createInstaller

      protected org.eclipse.aether.impl.Installer createInstaller()
    • getDeployer

      public final org.eclipse.aether.impl.Deployer getDeployer()
    • createDeployer

      protected org.eclipse.aether.impl.Deployer createDeployer()
    • getDependencyCollectorDelegates

      public final Map<String,org.eclipse.aether.internal.impl.collect.DependencyCollectorDelegate> getDependencyCollectorDelegates()
    • createDependencyCollectorDelegates

      protected Map<String,org.eclipse.aether.internal.impl.collect.DependencyCollectorDelegate> createDependencyCollectorDelegates()
    • getDependencyCollector

      public final org.eclipse.aether.impl.DependencyCollector getDependencyCollector()
    • createDependencyCollector

      protected org.eclipse.aether.impl.DependencyCollector createDependencyCollector()
    • getArtifactResolverPostProcessors

      public final Map<String,org.eclipse.aether.spi.resolution.ArtifactResolverPostProcessor> getArtifactResolverPostProcessors()
    • createArtifactResolverPostProcessors

      protected Map<String,org.eclipse.aether.spi.resolution.ArtifactResolverPostProcessor> createArtifactResolverPostProcessors()
    • getArtifactResolver

      public final org.eclipse.aether.impl.ArtifactResolver getArtifactResolver()
    • createArtifactResolver

      protected org.eclipse.aether.impl.ArtifactResolver createArtifactResolver()
    • getMetadataResolver

      public final org.eclipse.aether.impl.MetadataResolver getMetadataResolver()
    • createMetadataResolver

      protected org.eclipse.aether.impl.MetadataResolver createMetadataResolver()
    • getVersionScheme

      public final org.eclipse.aether.version.VersionScheme getVersionScheme()
    • createVersionScheme

      protected org.eclipse.aether.version.VersionScheme createVersionScheme()
    • getArtifactGeneratorFactories

      public final Map<String,org.eclipse.aether.spi.artifact.generator.ArtifactGeneratorFactory> getArtifactGeneratorFactories()
    • createArtifactGeneratorFactories

      protected Map<String,org.eclipse.aether.spi.artifact.generator.ArtifactGeneratorFactory> createArtifactGeneratorFactories()
    • getArtifactDecoratorFactories

      public final Map<String,org.eclipse.aether.spi.artifact.decorator.ArtifactDecoratorFactory> getArtifactDecoratorFactories()
    • createArtifactDecoratorFactories

      protected Map<String,org.eclipse.aether.spi.artifact.decorator.ArtifactDecoratorFactory> createArtifactDecoratorFactories()
    • getMetadataGeneratorFactories

      public final Map<String,org.eclipse.aether.impl.MetadataGeneratorFactory> getMetadataGeneratorFactories()
    • createMetadataGeneratorFactories

      protected Map<String,org.eclipse.aether.impl.MetadataGeneratorFactory> createMetadataGeneratorFactories()
    • getMavenArtifactRelocationSources

      public final LinkedHashMap<String,org.apache.maven.internal.impl.resolver.MavenArtifactRelocationSource> getMavenArtifactRelocationSources()
    • createMavenArtifactRelocationSources

      protected LinkedHashMap<String,org.apache.maven.internal.impl.resolver.MavenArtifactRelocationSource> createMavenArtifactRelocationSources()
    • getArtifactDescriptorReader

      public final org.eclipse.aether.impl.ArtifactDescriptorReader getArtifactDescriptorReader()
    • createArtifactDescriptorReader

      protected org.eclipse.aether.impl.ArtifactDescriptorReader createArtifactDescriptorReader()
    • getVersionResolver

      public final org.eclipse.aether.impl.VersionResolver getVersionResolver()
    • createVersionResolver

      protected org.eclipse.aether.impl.VersionResolver createVersionResolver()
    • getVersionRangeResolver

      public final org.eclipse.aether.impl.VersionRangeResolver getVersionRangeResolver()
    • createVersionRangeResolver

      protected org.eclipse.aether.impl.VersionRangeResolver createVersionRangeResolver()
    • getModelBuilder

      public final org.apache.maven.api.services.ModelBuilder getModelBuilder()
    • createModelBuilder

      protected org.apache.maven.api.services.ModelBuilder createModelBuilder()
    • getRepositorySystem

      public final org.eclipse.aether.RepositorySystem getRepositorySystem()
    • createRepositorySystem

      protected org.eclipse.aether.RepositorySystem createRepositorySystem()
    • get

      public org.eclipse.aether.RepositorySystem get()
      Specified by:
      get in interface Supplier<org.eclipse.aether.RepositorySystem>