Search in sources :

Example 6 with DefaultServiceLocator

use of org.eclipse.aether.impl.DefaultServiceLocator in project pinpoint by naver.

the class DependencyResolver method newRepositorySystem.

private static RepositorySystem newRepositorySystem() {
    DefaultServiceLocator locator = MavenRepositorySystemUtils.newServiceLocator();
    locator.addService(RepositoryConnectorFactory.class, BasicRepositoryConnectorFactory.class);
    locator.addService(TransporterFactory.class, FileTransporterFactory.class);
    locator.addService(TransporterFactory.class, HttpTransporterFactory.class);
    locator.setErrorHandler(new DefaultServiceLocator.ErrorHandler() {

        @Override
        public void serviceCreationFailed(Class<?> type, Class<?> impl, Throwable exception) {
            exception.printStackTrace();
        }
    });
    return locator.getService(RepositorySystem.class);
}
Also used : DefaultServiceLocator(org.eclipse.aether.impl.DefaultServiceLocator)

Example 7 with DefaultServiceLocator

use of org.eclipse.aether.impl.DefaultServiceLocator in project bnd by bndtools.

the class AetherRepository method init.

protected final synchronized void init() throws Exception {
    if (initialised)
        return;
    // Initialise Aether
    DefaultServiceLocator locator = MavenRepositorySystemUtils.newServiceLocator();
    locator.addService(ArtifactDescriptorReader.class, DefaultArtifactDescriptorReader.class);
    locator.addService(RepositoryConnectorFactory.class, BasicRepositoryConnectorFactory.class);
    locator.addService(TransporterFactory.class, FileTransporterFactory.class);
    locator.addService(TransporterFactory.class, HttpTransporterFactory.class);
    locator.setErrorHandler(new ErrorHandler() {

        @Override
        public void serviceCreationFailed(Class<?> type, Class<?> impl, Throwable exception) {
            if (reporter != null)
                reporter.error("Service creation failed for type %s using impl %s: %s", type, impl, exception.getLocalizedMessage());
            exception.printStackTrace();
        }
    });
    repoSystem = locator.getService(RepositorySystem.class);
    if (repoSystem == null)
        throw new IllegalArgumentException("Failed to initialise Aether repository system");
    Builder builder = new RemoteRepository.Builder("remote", "default", mainUri.toString());
    if (username != null) {
        AuthenticationBuilder authBuilder = new AuthenticationBuilder().addUsername(username);
        if (password != null)
            authBuilder.addPassword(password);
        builder.setAuthentication(authBuilder.build());
    }
    remoteRepo = builder.build();
    localRepo = new LocalRepository(new File(cacheDir, "aether-local"));
    // Initialise Index
    if (indexUri == null) {
        indexedRepo = null;
    } else {
        // Test whether the index URI exists and is available.
        HttpURLConnection connection = (HttpURLConnection) indexUri.toURL().openConnection();
        try {
            connection.setRequestMethod("HEAD");
            int responseCode = connection.getResponseCode();
            if (responseCode >= 400) {
                indexedRepo = null;
            } else {
                indexedRepo = new FixedIndexedRepo();
                Map<String, String> config = new HashMap<String, String>();
                indexedRepo.setReporter(this.reporter);
                indexedRepo.setRegistry(registry);
                config.put(FixedIndexedRepo.PROP_CACHE, cacheDir.getAbsolutePath());
                config.put(FixedIndexedRepo.PROP_LOCATIONS, indexUri.toString());
                indexedRepo.setProperties(config);
            }
        } catch (UnknownHostException e) {
            return;
        } finally {
            connection.disconnect();
        }
    }
    initialised = true;
}
Also used : ErrorHandler(org.eclipse.aether.impl.DefaultServiceLocator.ErrorHandler) AuthenticationBuilder(org.eclipse.aether.util.repository.AuthenticationBuilder) UnknownHostException(java.net.UnknownHostException) HashMap(java.util.HashMap) AuthenticationBuilder(org.eclipse.aether.util.repository.AuthenticationBuilder) Builder(org.eclipse.aether.repository.RemoteRepository.Builder) LocalRepository(org.eclipse.aether.repository.LocalRepository) DefaultServiceLocator(org.eclipse.aether.impl.DefaultServiceLocator) RepositorySystem(org.eclipse.aether.RepositorySystem) HttpURLConnection(java.net.HttpURLConnection) File(java.io.File) FixedIndexedRepo(aQute.bnd.deployer.repository.FixedIndexedRepo)

Aggregations

DefaultServiceLocator (org.eclipse.aether.impl.DefaultServiceLocator)7 RepositorySystem (org.eclipse.aether.RepositorySystem)3 LocalRepository (org.eclipse.aether.repository.LocalRepository)2 FixedIndexedRepo (aQute.bnd.deployer.repository.FixedIndexedRepo)1 File (java.io.File)1 HttpURLConnection (java.net.HttpURLConnection)1 URL (java.net.URL)1 UnknownHostException (java.net.UnknownHostException)1 ArrayList (java.util.ArrayList)1 HashMap (java.util.HashMap)1 DefaultRepositorySystemSession (org.eclipse.aether.DefaultRepositorySystemSession)1 CollectRequest (org.eclipse.aether.collection.CollectRequest)1 ErrorHandler (org.eclipse.aether.impl.DefaultServiceLocator.ErrorHandler)1 RemoteRepository (org.eclipse.aether.repository.RemoteRepository)1 Builder (org.eclipse.aether.repository.RemoteRepository.Builder)1 ArtifactResult (org.eclipse.aether.resolution.ArtifactResult)1 DependencyRequest (org.eclipse.aether.resolution.DependencyRequest)1 DependencyResult (org.eclipse.aether.resolution.DependencyResult)1 AuthenticationBuilder (org.eclipse.aether.util.repository.AuthenticationBuilder)1