Search in sources :

Example 1 with TransportManagerImpl

use of org.commonjava.maven.galley.transport.TransportManagerImpl in project galley by Commonjava.

the class GalleyCoreBuilder method initMissingComponents.

public void initMissingComponents() throws GalleyInitException {
    if (transportManager == null) {
        transportManager = new TransportManagerImpl(transports);
    }
    handlerExecutor = Executors.newFixedThreadPool(2, new NamedThreadFactory("transfer-handlers", true, 4));
    batchExecutor = Executors.newFixedThreadPool(2, new NamedThreadFactory("transfer-batches", true, 4));
    if (decorator == null) {
        decorator = new NoOpTransferDecorator();
    }
    if (events == null) {
        events = new NoOpFileEventManager();
    }
    if (nfc == null) {
        nfc = new MemoryNotFoundCache();
    }
    if (transportManagerConfig == null) {
        transportManagerConfig = new TransportManagerConfig();
    }
    final DownloadHandler dh = new DownloadHandler(getNfc(), transportManagerConfig, handlerExecutor);
    final UploadHandler uh = new UploadHandler(getNfc(), transportManagerConfig, handlerExecutor);
    final ListingHandler lh = new ListingHandler(getNfc());
    final ExistenceHandler eh = new ExistenceHandler(getNfc());
    if (specialPathManager == null) {
        specialPathManager = new SpecialPathManagerImpl();
    }
    if (pathGenerator == null) {
        pathGenerator = new HashedLocationPathGenerator();
    }
    if (cache == null) {
        if (cacheProviderFactory != null) {
            cache = cacheProviderFactory.create(pathGenerator, decorator, events);
        } else {
            throw new GalleyInitException("No CacheProvider / CacheProviderFactory specified!");
        }
    }
    if (transferManager == null) {
        transferManager = new TransferManagerImpl(transportManager, getCache(), getNfc(), getFileEvents(), dh, uh, lh, eh, specialPathManager, batchExecutor);
    }
    if (locationExpander == null) {
        logger.debug("Initializing default location expander");
        locationExpander = new NoOpLocationExpander();
    }
    if (locationResolver == null) {
        locationResolver = new SimpleUrlLocationResolver(locationExpander, transportManager);
    }
    if (passwordManager == null) {
        passwordManager = new MemoryPasswordManager();
    }
}
Also used : ListingHandler(org.commonjava.maven.galley.internal.xfer.ListingHandler) NoOpTransferDecorator(org.commonjava.maven.galley.io.NoOpTransferDecorator) TransferManagerImpl(org.commonjava.maven.galley.internal.TransferManagerImpl) TransportManagerImpl(org.commonjava.maven.galley.transport.TransportManagerImpl) HashedLocationPathGenerator(org.commonjava.maven.galley.io.HashedLocationPathGenerator) NamedThreadFactory(org.commonjava.cdi.util.weft.NamedThreadFactory) DownloadHandler(org.commonjava.maven.galley.internal.xfer.DownloadHandler) TransportManagerConfig(org.commonjava.maven.galley.config.TransportManagerConfig) MemoryNotFoundCache(org.commonjava.maven.galley.nfc.MemoryNotFoundCache) MemoryPasswordManager(org.commonjava.maven.galley.auth.MemoryPasswordManager) NoOpLocationExpander(org.commonjava.maven.galley.transport.NoOpLocationExpander) SpecialPathManagerImpl(org.commonjava.maven.galley.io.SpecialPathManagerImpl) NoOpFileEventManager(org.commonjava.maven.galley.event.NoOpFileEventManager) SimpleUrlLocationResolver(org.commonjava.maven.galley.transport.SimpleUrlLocationResolver) UploadHandler(org.commonjava.maven.galley.internal.xfer.UploadHandler) ExistenceHandler(org.commonjava.maven.galley.internal.xfer.ExistenceHandler)

Example 2 with TransportManagerImpl

use of org.commonjava.maven.galley.transport.TransportManagerImpl in project galley by Commonjava.

the class TransferManagerImplTest method setup.

@Before
public void setup() {
    transport = new TestTransport();
    transportMgr = new TransportManagerImpl(transport);
    cacheProvider = new FileCacheProvider(temp.newFolder("cache"), new HashedLocationPathGenerator(), new NoOpFileEventManager(), new NoOpTransferDecorator(), true);
    nfc = new MemoryNotFoundCache();
    fileEvents = new NoOpFileEventManager();
    executor = Executors.newSingleThreadExecutor();
    TransportManagerConfig transportManagerConfig = new TransportManagerConfig();
    final DownloadHandler dh = new DownloadHandler(nfc, transportManagerConfig, executor);
    final UploadHandler uh = new UploadHandler(nfc, transportManagerConfig, executor);
    final ListingHandler lh = new ListingHandler(nfc);
    final ExistenceHandler eh = new ExistenceHandler(nfc);
    mgr = new TransferManagerImpl(transportMgr, cacheProvider, nfc, fileEvents, dh, uh, lh, eh, new SpecialPathManagerImpl(), Executors.newFixedThreadPool(2));
}
Also used : FileCacheProvider(org.commonjava.maven.galley.cache.FileCacheProvider) ListingHandler(org.commonjava.maven.galley.internal.xfer.ListingHandler) NoOpTransferDecorator(org.commonjava.maven.galley.io.NoOpTransferDecorator) TransferManagerImpl(org.commonjava.maven.galley.internal.TransferManagerImpl) TransportManagerImpl(org.commonjava.maven.galley.transport.TransportManagerImpl) HashedLocationPathGenerator(org.commonjava.maven.galley.io.HashedLocationPathGenerator) DownloadHandler(org.commonjava.maven.galley.internal.xfer.DownloadHandler) TransportManagerConfig(org.commonjava.maven.galley.config.TransportManagerConfig) MemoryNotFoundCache(org.commonjava.maven.galley.nfc.MemoryNotFoundCache) SpecialPathManagerImpl(org.commonjava.maven.galley.io.SpecialPathManagerImpl) NoOpFileEventManager(org.commonjava.maven.galley.event.NoOpFileEventManager) TestTransport(org.commonjava.maven.galley.testing.core.transport.TestTransport) UploadHandler(org.commonjava.maven.galley.internal.xfer.UploadHandler) ExistenceHandler(org.commonjava.maven.galley.internal.xfer.ExistenceHandler) Before(org.junit.Before)

Example 3 with TransportManagerImpl

use of org.commonjava.maven.galley.transport.TransportManagerImpl in project pom-manipulation-ext by release-engineering.

the class GalleyInfrastructure method init.

private void init(final File targetDirectory, final List<ArtifactRepository> remoteRepositories, final ArtifactRepository localRepository, final Settings settings, final List<String> activeProfiles, final Location customLocation, final Transport customTransport, File cacheDir_) throws ManipulationException {
    LocationExpander locationExpander;
    try {
        final List<Location> custom = customLocation == null ? Collections.<Location>emptyList() : Collections.singletonList(customLocation);
        locationExpander = new MavenLocationExpander(custom, remoteRepositories, localRepository, mirrorSelector, settings, activeProfiles);
    } catch (final MalformedURLException e) {
        throw new ManipulationException("Failed to setup Maven-specific LocationExpander: %s", e, e.getMessage());
    }
    xml = new XMLInfrastructure();
    xpaths = new XPathManager();
    final TransportManager transports;
    if (customTransport != null) {
        transports = new TransportManagerImpl(customTransport);
    } else {
        transports = new TransportManagerImpl(new HttpClientTransport(new HttpImpl(new MemoryPasswordManager())), new FileTransport(), new ZipJarTransport());
    }
    cacheDir = cacheDir_;
    if (cacheDir == null) {
        cacheDir = new File(targetDirectory, "manipulator-cache");
    }
    final FileEventManager fileEvents = new NoOpFileEventManager();
    final CacheProvider cache = new FileCacheProvider(cacheDir, new HashedLocationPathGenerator(), fileEvents, new NoOpTransferDecorator());
    final NotFoundCache nfc = new MemoryNotFoundCache();
    executor = Executors.newCachedThreadPool();
    final TransportManagerConfig config = new TransportManagerConfig();
    final TransferManager transfers = new TransferManagerImpl(transports, cache, nfc, fileEvents, new DownloadHandler(nfc, config, executor), new UploadHandler(nfc, config, executor), new ListingHandler(nfc), new ExistenceHandler(nfc), new SpecialPathManagerImpl(), executor);
    final TypeMapper types = new StandardTypeMapper();
    final ArtifactMetadataManager metadataManager = new ArtifactMetadataManagerImpl(transfers, locationExpander);
    final VersionResolver versionResolver = new VersionResolverImpl(new MavenMetadataReader(xml, locationExpander, metadataManager, xpaths));
    artifactManager = new ArtifactManagerImpl(transfers, locationExpander, types, versionResolver);
    // TODO: auto-adjust this to the current Maven runtime!
    final MavenPluginDefaults pluginDefaults = new StandardMaven304PluginDefaults();
    final MavenPluginImplications pluginImplications = new StandardMavenPluginImplications(xml);
    pomReader = new MavenPomReader(xml, locationExpander, artifactManager, xpaths, pluginDefaults, pluginImplications);
    metadataReader = new MavenMetadataReader(xml, locationExpander, metadataManager, xpaths);
}
Also used : StandardTypeMapper(org.commonjava.maven.galley.maven.internal.type.StandardTypeMapper) TypeMapper(org.commonjava.maven.galley.maven.spi.type.TypeMapper) MalformedURLException(java.net.MalformedURLException) NoOpTransferDecorator(org.commonjava.maven.galley.io.NoOpTransferDecorator) TransferManagerImpl(org.commonjava.maven.galley.internal.TransferManagerImpl) VersionResolverImpl(org.commonjava.maven.galley.maven.internal.version.VersionResolverImpl) MavenPluginDefaults(org.commonjava.maven.galley.maven.spi.defaults.MavenPluginDefaults) XPathManager(org.commonjava.maven.galley.maven.model.view.XPathManager) HttpImpl(org.commonjava.maven.galley.transport.htcli.HttpImpl) SpecialPathManagerImpl(org.commonjava.maven.galley.io.SpecialPathManagerImpl) LocationExpander(org.commonjava.maven.galley.spi.transport.LocationExpander) StandardMavenPluginImplications(org.commonjava.maven.galley.maven.internal.defaults.StandardMavenPluginImplications) MavenPluginImplications(org.commonjava.maven.galley.maven.spi.defaults.MavenPluginImplications) ArtifactMetadataManager(org.commonjava.maven.galley.maven.ArtifactMetadataManager) MavenMetadataReader(org.commonjava.maven.galley.maven.parse.MavenMetadataReader) MemoryNotFoundCache(org.commonjava.maven.galley.nfc.MemoryNotFoundCache) NotFoundCache(org.commonjava.maven.galley.spi.nfc.NotFoundCache) UploadHandler(org.commonjava.maven.galley.internal.xfer.UploadHandler) StandardTypeMapper(org.commonjava.maven.galley.maven.internal.type.StandardTypeMapper) ExistenceHandler(org.commonjava.maven.galley.internal.xfer.ExistenceHandler) FileCacheProvider(org.commonjava.maven.galley.cache.FileCacheProvider) TransferManager(org.commonjava.maven.galley.TransferManager) ListingHandler(org.commonjava.maven.galley.internal.xfer.ListingHandler) TransportManagerImpl(org.commonjava.maven.galley.transport.TransportManagerImpl) HashedLocationPathGenerator(org.commonjava.maven.galley.io.HashedLocationPathGenerator) DownloadHandler(org.commonjava.maven.galley.internal.xfer.DownloadHandler) TransportManagerConfig(org.commonjava.maven.galley.config.TransportManagerConfig) MemoryNotFoundCache(org.commonjava.maven.galley.nfc.MemoryNotFoundCache) MemoryPasswordManager(org.commonjava.maven.galley.auth.MemoryPasswordManager) CacheProvider(org.commonjava.maven.galley.spi.cache.CacheProvider) FileCacheProvider(org.commonjava.maven.galley.cache.FileCacheProvider) StandardMavenPluginImplications(org.commonjava.maven.galley.maven.internal.defaults.StandardMavenPluginImplications) ArtifactMetadataManagerImpl(org.commonjava.maven.galley.maven.internal.ArtifactMetadataManagerImpl) NoOpFileEventManager(org.commonjava.maven.galley.event.NoOpFileEventManager) StandardMaven304PluginDefaults(org.commonjava.maven.galley.maven.internal.defaults.StandardMaven304PluginDefaults) HttpClientTransport(org.commonjava.maven.galley.transport.htcli.HttpClientTransport) NoOpFileEventManager(org.commonjava.maven.galley.event.NoOpFileEventManager) FileEventManager(org.commonjava.maven.galley.spi.event.FileEventManager) VersionResolver(org.commonjava.maven.galley.maven.spi.version.VersionResolver) FileTransport(org.commonjava.maven.galley.filearc.FileTransport) ZipJarTransport(org.commonjava.maven.galley.filearc.ZipJarTransport) ManipulationException(org.commonjava.maven.ext.common.ManipulationException) XMLInfrastructure(org.commonjava.maven.galley.maven.parse.XMLInfrastructure) ArtifactManagerImpl(org.commonjava.maven.galley.maven.internal.ArtifactManagerImpl) TransportManager(org.commonjava.maven.galley.spi.transport.TransportManager) MavenPomReader(org.commonjava.maven.galley.maven.parse.MavenPomReader) File(java.io.File) Location(org.commonjava.maven.galley.model.Location)

Example 4 with TransportManagerImpl

use of org.commonjava.maven.galley.transport.TransportManagerImpl in project indy by Commonjava.

the class HttpProxyTest method setup.

@Before
public void setup() throws Exception {
    contentMetadata.clear();
    core.initGalley();
    final TransportManager transports = new TransportManagerImpl(new HttpClientTransport(new HttpImpl(new MemoryPasswordManager())));
    core.withTransportManager(transports);
    core.initMissingComponents();
    final HttproxConfig config = new HttproxConfig();
    config.setEnabled(true);
    proxyPort = config.getPort();
    final BootOptions bootOpts = new BootOptions();
    bootOpts.setBind(HOST);
    storeManager = new MemoryStoreDataManager(true);
    final IndyObjectMapper mapper = new IndyObjectMapper(true);
    final DefaultIndyConfiguration indyConfig = new DefaultIndyConfiguration();
    indyConfig.setNotFoundCacheTimeoutSeconds(1);
    final ExpiringMemoryNotFoundCache nfc = new ExpiringMemoryNotFoundCache(indyConfig);
    WeftExecutorService rescanService = new PoolWeftExecutorService("test-rescan-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false, null, null);
    final DownloadManager downloadManager = new DefaultDownloadManager(storeManager, core.getTransferManager(), core.getLocationExpander(), new MockInstance<>(new MockContentAdvisor()), nfc, rescanService);
    WeftExecutorService contentAccessService = new PoolWeftExecutorService("test-content-access-executor", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false, null, null);
    DirectContentAccess dca = new DefaultDirectContentAccess(downloadManager, contentAccessService);
    ContentDigester contentDigester = new DefaultContentDigester(dca, new CacheHandle<>("content-metadata", contentMetadata));
    final ContentManager contentManager = new DefaultContentManager(storeManager, downloadManager, mapper, new SpecialPathManagerImpl(), new MemoryNotFoundCache(), contentDigester, new ContentGeneratorManager());
    DataFileManager dfm = new DataFileManager(temp.newFolder(), new DataFileEventManager());
    final TemplatingEngine templates = new TemplatingEngine(new GStringTemplateEngine(), dfm);
    final ContentController contentController = new ContentController(storeManager, contentManager, templates, mapper, new MimeTyper());
    KeycloakConfig kcConfig = new KeycloakConfig();
    kcConfig.setEnabled(false);
    final KeycloakProxyAuthenticator auth = new KeycloakProxyAuthenticator(kcConfig, config);
    ScriptEngine scriptEngine = new ScriptEngine(dfm);
    WeftExecutorService transferService = new PoolWeftExecutorService("test-mitm-transfers", (ThreadPoolExecutor) Executors.newCachedThreadPool(), 2, 10f, false, null, null);
    ProxyTransfersExecutor handler = new ProxyTransfersExecutor(transferService);
    IndyTraceConfiguration itc = new IndyTraceConfiguration();
    TraceManager tm = new TraceManager(new OtelTracePlugin(itc, itc), new SpanFieldsDecorator(Collections.emptyList()), itc);
    proxy = new HttpProxy(config, bootOpts, new ProxyAcceptHandler(config, storeManager, contentController, auth, core.getCache(), scriptEngine, new MDCManager(), null, null, new CacheProducer(null, cacheManager, null), handler, tm));
    proxy.start();
}
Also used : PoolWeftExecutorService(org.commonjava.cdi.util.weft.PoolWeftExecutorService) DefaultContentManager(org.commonjava.indy.core.content.DefaultContentManager) SpanFieldsDecorator(org.commonjava.o11yphant.trace.SpanFieldsDecorator) DownloadManager(org.commonjava.indy.content.DownloadManager) DefaultDownloadManager(org.commonjava.indy.core.content.DefaultDownloadManager) TraceManager(org.commonjava.o11yphant.trace.TraceManager) HttpImpl(org.commonjava.maven.galley.transport.htcli.HttpImpl) SpecialPathManagerImpl(org.commonjava.maven.galley.io.SpecialPathManagerImpl) HttproxConfig(org.commonjava.indy.httprox.conf.HttproxConfig) DirectContentAccess(org.commonjava.indy.content.DirectContentAccess) DefaultDirectContentAccess(org.commonjava.indy.core.content.DefaultDirectContentAccess) IndyObjectMapper(org.commonjava.indy.model.core.io.IndyObjectMapper) MemoryStoreDataManager(org.commonjava.indy.mem.data.MemoryStoreDataManager) KeycloakProxyAuthenticator(org.commonjava.indy.httprox.keycloak.KeycloakProxyAuthenticator) OtelTracePlugin(org.commonjava.o11yphant.otel.OtelTracePlugin) ProxyTransfersExecutor(org.commonjava.indy.httprox.handler.ProxyTransfersExecutor) DefaultDownloadManager(org.commonjava.indy.core.content.DefaultDownloadManager) DefaultIndyConfiguration(org.commonjava.indy.conf.DefaultIndyConfiguration) ContentDigester(org.commonjava.indy.content.ContentDigester) DefaultContentDigester(org.commonjava.indy.core.content.DefaultContentDigester) TransportManagerImpl(org.commonjava.maven.galley.transport.TransportManagerImpl) DefaultContentDigester(org.commonjava.indy.core.content.DefaultContentDigester) ContentController(org.commonjava.indy.core.ctl.ContentController) DataFileEventManager(org.commonjava.indy.subsys.datafile.change.DataFileEventManager) DefaultContentManager(org.commonjava.indy.core.content.DefaultContentManager) ContentManager(org.commonjava.indy.content.ContentManager) ExpiringMemoryNotFoundCache(org.commonjava.indy.core.inject.ExpiringMemoryNotFoundCache) MemoryNotFoundCache(org.commonjava.maven.galley.nfc.MemoryNotFoundCache) ExpiringMemoryNotFoundCache(org.commonjava.indy.core.inject.ExpiringMemoryNotFoundCache) GStringTemplateEngine(groovy.text.GStringTemplateEngine) MemoryPasswordManager(org.commonjava.maven.galley.auth.MemoryPasswordManager) BootOptions(org.commonjava.propulsor.boot.BootOptions) MimeTyper(org.commonjava.indy.util.MimeTyper) ScriptEngine(org.commonjava.indy.subsys.template.ScriptEngine) WeftExecutorService(org.commonjava.cdi.util.weft.WeftExecutorService) PoolWeftExecutorService(org.commonjava.cdi.util.weft.PoolWeftExecutorService) CacheProducer(org.commonjava.indy.subsys.infinispan.CacheProducer) HttpClientTransport(org.commonjava.maven.galley.transport.htcli.HttpClientTransport) MDCManager(org.commonjava.indy.bind.jaxrs.MDCManager) DataFileManager(org.commonjava.indy.subsys.datafile.DataFileManager) TemplatingEngine(org.commonjava.indy.subsys.template.TemplatingEngine) MockContentAdvisor(org.commonjava.indy.test.fixture.core.MockContentAdvisor) IndyTraceConfiguration(org.commonjava.indy.subsys.honeycomb.config.IndyTraceConfiguration) TransportManager(org.commonjava.maven.galley.spi.transport.TransportManager) ContentGeneratorManager(org.commonjava.indy.core.content.ContentGeneratorManager) ProxyAcceptHandler(org.commonjava.indy.httprox.handler.ProxyAcceptHandler) DefaultDirectContentAccess(org.commonjava.indy.core.content.DefaultDirectContentAccess) KeycloakConfig(org.commonjava.indy.subsys.keycloak.conf.KeycloakConfig) Before(org.junit.Before)

Aggregations

SpecialPathManagerImpl (org.commonjava.maven.galley.io.SpecialPathManagerImpl)4 MemoryNotFoundCache (org.commonjava.maven.galley.nfc.MemoryNotFoundCache)4 TransportManagerImpl (org.commonjava.maven.galley.transport.TransportManagerImpl)4 MemoryPasswordManager (org.commonjava.maven.galley.auth.MemoryPasswordManager)3 TransportManagerConfig (org.commonjava.maven.galley.config.TransportManagerConfig)3 NoOpFileEventManager (org.commonjava.maven.galley.event.NoOpFileEventManager)3 TransferManagerImpl (org.commonjava.maven.galley.internal.TransferManagerImpl)3 DownloadHandler (org.commonjava.maven.galley.internal.xfer.DownloadHandler)3 ExistenceHandler (org.commonjava.maven.galley.internal.xfer.ExistenceHandler)3 ListingHandler (org.commonjava.maven.galley.internal.xfer.ListingHandler)3 UploadHandler (org.commonjava.maven.galley.internal.xfer.UploadHandler)3 HashedLocationPathGenerator (org.commonjava.maven.galley.io.HashedLocationPathGenerator)3 NoOpTransferDecorator (org.commonjava.maven.galley.io.NoOpTransferDecorator)3 FileCacheProvider (org.commonjava.maven.galley.cache.FileCacheProvider)2 TransportManager (org.commonjava.maven.galley.spi.transport.TransportManager)2 HttpClientTransport (org.commonjava.maven.galley.transport.htcli.HttpClientTransport)2 HttpImpl (org.commonjava.maven.galley.transport.htcli.HttpImpl)2 Before (org.junit.Before)2 GStringTemplateEngine (groovy.text.GStringTemplateEngine)1 File (java.io.File)1