Example usage for org.apache.maven.artifact.repository ArtifactRepository getId

List of usage examples for org.apache.maven.artifact.repository ArtifactRepository getId

Introduction

In this page you can find the example usage for org.apache.maven.artifact.repository ArtifactRepository getId.

Prototype

String getId();

Source Link

Usage

From source file:at.yawk.mdep.GenerateMojo.java

private Dependency findArtifact(Artifact artifact) throws MojoExecutionException {
    // all are scanned, the first is used to store the dependency
    List<Path> cacheSearchLocations = new ArrayList<>();

    List<String> coordinateComponents = Arrays.asList(artifact.getGroupId(), artifact.getArtifactId(),
            artifact.getVersion(), artifact.getScope());

    // in 1.0, we used only ':' as the separator. This does not work on windows, and the following code fixes
    // that problem.

    for (String separator : Arrays.asList(":", "/")) {
        try {//from w  w  w .  jav a2 s .com
            cacheSearchLocations.add(cacheStore.resolve(String.join(separator, coordinateComponents)));
        } catch (InvalidPathException ignored) {
        }
    }

    // check local cache
    if (cacheHours > 0) {
        for (Path searchLocation : cacheSearchLocations) {
            if (Files.exists(searchLocation)) {
                Instant cacheDeadline = Instant.now().minusSeconds((long) (60 * 60 * cacheHours));
                try {
                    if (Files.getLastModifiedTime(searchLocation).toInstant().isAfter(cacheDeadline)) {

                        try (InputStream in = Files.newInputStream(searchLocation)) {
                            Dependency dependency = (Dependency) JAXBContext.newInstance(Dependency.class)
                                    .createUnmarshaller().unmarshal(in);

                            getLog().info("Checksum was present in local cache: " + artifact);
                            return dependency;
                        }
                    }
                } catch (IOException | JAXBException e) {
                    throw new MojoExecutionException("Failed to read local cache", e);
                }
            }
        }
    }

    for (ArtifactRepository repository : remoteArtifactRepositories) {
        // only scan configured repositories
        if (this.repositories != null && !this.repositories.contains(repository.getId())) {
            continue;
        }

        Dependency dependency = findArtifactInRepository(artifact, repository);
        if (dependency != null) {

            if (cacheHours > 0) {
                try {
                    Path target = cacheSearchLocations.get(0);
                    if (!Files.isDirectory(target.getParent())) {
                        Files.createDirectories(target.getParent());
                    }
                    try (OutputStream out = Files.newOutputStream(target)) {
                        JAXBContext.newInstance(Dependency.class).createMarshaller().marshal(dependency, out);
                    }
                } catch (IOException | JAXBException e) {
                    getLog().warn("Could not save dependency to local cache", e);
                }
            }
            return dependency;
        }
    }

    throw new MojoExecutionException("Could not find " + artifact + " in configured repositories");
}

From source file:com.aquent.mojo.delivery.RemoteVersionMojo.java

License:Open Source License

private ArtifactRepository getRemoteRepository() {
    for (ArtifactRepository repository : remoteArtifactRepositories) {
        if (remoteRepositoryId.equals(repository.getId())) {
            return repository;
        }/* w  w w.j a  va2s .c o m*/
    }
    return null;
}

From source file:com.rebaze.maven.support.AetherUtils.java

License:Open Source License

public static RemoteRepository toRepo(ArtifactRepository repo) {
    RemoteRepository result = null;/* w w  w.j a  va 2s  .c o  m*/
    if (repo != null) {
        RemoteRepository.Builder builder = new RemoteRepository.Builder(repo.getId(), getLayout(repo),
                repo.getUrl());
        builder.setSnapshotPolicy(toPolicy(repo.getSnapshots()));
        builder.setReleasePolicy(toPolicy(repo.getReleases()));
        builder.setAuthentication(toAuthentication(repo.getAuthentication()));
        builder.setProxy(toProxy(repo.getProxy()));
        builder.setMirroredRepositories(toRepos(repo.getMirroredRepositories()));
        result = builder.build();
    }
    return result;
}

From source file:hu.skawa.migrator_maven_plugin.ServerExport.java

License:Apache License

public void execute() throws MojoExecutionException {
    List<ArtifactRepository> remoteRepos = project.getRemoteArtifactRepositories();
    List<Server> servers = Lists.newArrayList();
    for (ArtifactRepository repo : remoteRepos) {
        //@formatter:off
        servers.add(new Server(repo.getUrl(), repo.getAuthentication().getUsername(),
                repo.getAuthentication().getPassword(), repo.getId()));
        //@formatter:on
    }/* w w w  .  jav  a2  s  .  com*/

    try {
        for (Server s : servers) {
            if (outputFilePrefix != null) {
                File serverFile = new File(outputFilePrefix + "-servers");
                FileWriter serverWriter = new FileWriter(serverFile);
                serverWriter.write(s.toBazelServer());
                serverWriter.write("\n");
                serverWriter.close();
            } else {
                getLog().info(s.toBazelServer());
            }
        }
    } catch (IOException e) {
        getLog().error(e);
    }
}

From source file:hudson.gridmaven.reporters.MavenArtifactRecord.java

License:Open Source License

@Override
public void deploy(MavenEmbedder embedder, ArtifactRepository deploymentRepository, TaskListener listener)
        throws MavenEmbedderException, IOException, ComponentLookupException, ArtifactDeploymentException {
    ArtifactHandlerManager handlerManager = embedder.lookup(ArtifactHandlerManager.class);

    ArtifactFactory artifactFactory = embedder.lookup(ArtifactFactory.class);
    PrintStream logger = listener.getLogger();
    boolean maven3orLater = MavenUtil.maven3orLater(parent.getModuleSetBuild().getMavenVersionUsed());
    boolean uniqueVersion = true;
    if (!deploymentRepository.isUniqueVersion()) {
        if (maven3orLater) {
            logger.println("[ERROR] uniqueVersion == false is not anymore supported in maven 3");
        } else {//from   w w  w  . ja  v a 2s . c o m
            ((WrappedArtifactRepository) deploymentRepository).setUniqueVersion(false);
            uniqueVersion = false;
        }
    } else {
        ((WrappedArtifactRepository) deploymentRepository).setUniqueVersion(true);
    }
    Artifact main = mainArtifact.toArtifact(handlerManager, artifactFactory, parent);
    if (!isPOM())
        main.addMetadata(new ProjectArtifactMetadata(main, pomArtifact.getFile(parent)));

    if (main.getType().equals("maven-plugin")) {
        GroupRepositoryMetadata metadata = new GroupRepositoryMetadata(main.getGroupId());
        String goalPrefix = PluginDescriptor.getGoalPrefixFromArtifactId(main.getArtifactId());
        metadata.addPluginMapping(goalPrefix, main.getArtifactId(), null);
        main.addMetadata(metadata);
    }

    ArtifactDeployer deployer = embedder.lookup(ArtifactDeployer.class, uniqueVersion ? "default" : "maven2");
    logger.println("[INFO] Deployment in " + deploymentRepository.getUrl() + " (id="
            + deploymentRepository.getId() + ",uniqueVersion=" + deploymentRepository.isUniqueVersion() + ")");

    // deploy the main artifact. This also deploys the POM
    logger.println(Messages.MavenArtifact_DeployingMainArtifact(main.getFile().getName()));
    deployer.deploy(main.getFile(), main, deploymentRepository, embedder.getLocalRepository());

    for (MavenArtifact aa : attachedArtifacts) {
        Artifact a = aa.toArtifact(handlerManager, artifactFactory, parent);
        logger.println(Messages.MavenArtifact_DeployingMainArtifact(a.getFile().getName()));
        deployer.deploy(a.getFile(), a, deploymentRepository, embedder.getLocalRepository());
    }
}

From source file:hudson.maven.artifact.transform.SnapshotTransformation.java

License:Apache License

private int resolveLatestSnapshotBuildNumber(Artifact artifact, ArtifactRepository localRepository,
        ArtifactRepository remoteRepository) throws RepositoryMetadataResolutionException {

    RepositoryMetadata metadata = new SnapshotArtifactRepositoryMetadata(artifact);

    getLogger().info("Retrieving previous build number from " + remoteRepository.getId());
    repositoryMetadataManager.resolveAlways(metadata, localRepository, remoteRepository);

    int buildNumber = 0;
    Metadata repoMetadata = metadata.getMetadata();
    if ((repoMetadata != null)
            && (repoMetadata.getVersioning() != null && repoMetadata.getVersioning().getSnapshot() != null)) {
        buildNumber = repoMetadata.getVersioning().getSnapshot().getBuildNumber();
    }/*  w  ww  .jav a  2s . c o m*/
    return buildNumber;
}

From source file:hudson.staging.SCPRepositoryCopier.java

License:Apache License

protected List scanForArtifactPaths(ArtifactRepository repository) {
    List collected;/*from   w  w  w.  j a va  2s.com*/
    try {
        Wagon wagon = wagonManager.getWagon(repository.getProtocol());
        Repository artifactRepository = new Repository(repository.getId(), repository.getUrl());
        wagon.connect(artifactRepository);
        collected = new ArrayList();
        scan(wagon, "/", collected);
        wagon.disconnect();

        return collected;

    } catch (UnsupportedProtocolException e) {
        throw new RuntimeException(e);
    } catch (ConnectionException e) {
        throw new RuntimeException(e);
    } catch (AuthenticationException e) {
        throw new RuntimeException(e);
    }
}

From source file:io.fabric8.maven.DeployToProfileMojo.java

License:Apache License

@SuppressWarnings("unchecked")
private void addNeededRemoteRepository() {
    // TODO: Remove this code when we use releases from Maven Central
    // included jboss-fs repo which is required until we use an Apache version of Karaf
    boolean found = false;
    if (remoteRepositories != null) {
        for (Object obj : remoteRepositories) {
            if (obj instanceof ArtifactRepository) {
                ArtifactRepository repo = (ArtifactRepository) obj;
                if (repo.getUrl().contains("repository.jboss.org/nexus/content/groups/fs-public")) {
                    found = true;//from w w  w .java 2s  .  c o  m
                    getLog().debug("Found existing (" + repo.getId() + ") remote repository: " + repo.getUrl());
                    break;
                }
            }
        }
    }
    if (!found) {
        ArtifactRepository fsPublic = new MavenArtifactRepository();
        fsPublic.setId("jboss-public-fs");
        fsPublic.setUrl("http://repository.jboss.org/nexus/content/groups/fs-public/");
        fsPublic.setLayout(new DefaultRepositoryLayout());
        fsPublic.setReleaseUpdatePolicy(new ArtifactRepositoryPolicy(true, "never", "warn"));
        fsPublic.setSnapshotUpdatePolicy(new ArtifactRepositoryPolicy(false, "never", "ignore"));
        if (remoteRepositories == null) {
            remoteRepositories = new ArrayList();
        }
        remoteRepositories.add(fsPublic);
        getLog().info(
                "Adding needed remote repository: http://repository.jboss.org/nexus/content/groups/fs-public/");
    }
}

From source file:me.gladwell.eclipse.m2e.android.resolve.eclipse.EclipseAetherLibraryResolver.java

License:Open Source License

public List<Library> resolveLibraries(Dependency dependency, String type, MavenProject project) {
    final DefaultArtifact artifact = new DefaultArtifact(dependency.getGroup(), dependency.getName(), type,
            dependency.getVersion());/*  w w  w.  j  a  v a2s .  co m*/

    final List<ArtifactRepository> repositories = project.getRemoteArtifactRepositories();
    final List<RemoteRepository> remoteRepositories = new ArrayList<RemoteRepository>();

    for (ArtifactRepository repository : repositories) {
        RemoteRepository repo = new RemoteRepository.Builder(repository.getId(),
                repository.getLayout().toString(), repository.getUrl()).build();
        remoteRepositories.add(repo);
    }

    return resolveDependencies(artifact, remoteRepositories);
}

From source file:me.gladwell.eclipse.m2e.android.resolve.sonatype.SonatypeAetherLibraryResolver.java

License:Open Source License

public List<Library> resolveLibraries(Dependency dependency, String type, MavenProject project) {
    final DefaultArtifact artifact = new DefaultArtifact(dependency.getGroup(), dependency.getName(), type,
            dependency.getVersion());/*from  w ww  . ja v  a  2s .  c om*/

    final List<ArtifactRepository> repositories = project.getRemoteArtifactRepositories();
    final List<RemoteRepository> remoteRepositories = new ArrayList<RemoteRepository>();

    for (ArtifactRepository repository : repositories) {
        RemoteRepository repo = new RemoteRepository(repository.getId(), repository.getLayout().toString(),
                repository.getUrl());
        remoteRepositories.add(repo);
    }

    return resolveDependencies(artifact, remoteRepositories);
}