Example usage for org.apache.maven.project MavenProject getDistributionManagement

List of usage examples for org.apache.maven.project MavenProject getDistributionManagement

Introduction

In this page you can find the example usage for org.apache.maven.project MavenProject getDistributionManagement.

Prototype

public DistributionManagement getDistributionManagement() 

Source Link

Usage

From source file:aQute.bnd.maven.reporter.plugin.entries.mavenproject.CommonInfoPlugin.java

private String extractUpdateLocation(MavenProject project) {
    if (project.getDistributionManagement() != null) {
        return project.getDistributionManagement().getDownloadUrl();
    } else {//from w ww  . ja  v  a 2s. c om
        return null;
    }
}

From source file:com.effectivemaven.centrepoint.maven.repository.CentralRepositoryService.java

License:Apache License

public Project retrieveProject(String groupId, String artifactId, String version) throws RepositoryException {
    // get the project from the repository
    Artifact artifact = artifactFactory.createProjectArtifact(groupId, artifactId, version);
    MavenProject mavenProject;
    try {/*  ww w  .j av  a 2s  .  com*/
        mavenProject = projectBuilder.buildFromRepository(artifact, Collections.singletonList(repository),
                localRepository);
    } catch (ProjectBuildingException e) {
        throw new RepositoryException(e.getMessage(), e);
    }

    // populate the Centrepoint model from the Maven project
    Project project = new Project();
    project.setId(MavenCoordinates.constructProjectId(groupId, artifactId));
    project.setVersion(version);

    MavenCoordinates coordinates = new MavenCoordinates();
    coordinates.setGroupId(groupId);
    coordinates.setArtifactId(artifactId);
    project.addExtensionModel(coordinates);

    project.setDescription(mavenProject.getDescription());
    project.setName(mavenProject.getName());
    if (mavenProject.getCiManagement() != null) {
        project.setCiManagementUrl(mavenProject.getCiManagement().getUrl());
    }
    if (mavenProject.getIssueManagement() != null) {
        project.setIssueTrackerUrl(mavenProject.getIssueManagement().getUrl());
    }
    if (mavenProject.getScm() != null) {
        project.setScmUrl(mavenProject.getScm().getUrl());
    }
    project.setUrl(mavenProject.getUrl());

    DistributionManagement distMgmt = mavenProject.getDistributionManagement();
    if (distMgmt != null) {
        project.setRepositoryUrl(distMgmt.getRepository().getUrl());
        project.setSnapshotRepositoryUrl(distMgmt.getSnapshotRepository().getUrl());
    }

    return project;
}

From source file:io.fabric8.maven.enricher.fabric8.DocLinkEnricher.java

License:Apache License

protected DistributionManagement findProjectDistributionManagement() {
    MavenProject project = getProject();
    while (project != null) {
        DistributionManagement distributionManagement = project.getDistributionManagement();
        if (distributionManagement != null) {
            return distributionManagement;
        }/*from  www. java  2s  . c o m*/
        project = project.getParent();
    }
    return null;
}

From source file:io.sundr.maven.GenerateBomMojo.java

License:Apache License

/**
 * Returns the generated {@link org.apache.maven.project.MavenProject} to build.
 * This version of the project contains all the stuff needed for building (parents, profiles, properties etc).
 *
 * @param project The source {@link org.apache.maven.project.MavenProject}.
 * @param config  The {@link io.sundr.maven.BomConfig}.
 * @return The build {@link org.apache.maven.project.MavenProject}.
 *///ww  w.j  av  a2  s  .  c  o m
private static MavenProject toBuild(MavenProject project, BomConfig config) {
    File outputDir = new File(project.getBuild().getOutputDirectory());
    File bomDir = new File(outputDir, config.getArtifactId());
    File generatedBom = new File(bomDir, BOM_NAME);

    MavenProject toBuild = project.clone();
    //we want to avoid recursive "generate-bom".
    toBuild.setExecutionRoot(false);
    toBuild.setFile(generatedBom);
    toBuild.getModel().setPomFile(generatedBom);
    toBuild.setModelVersion(project.getModelVersion());

    toBuild.setArtifact(new DefaultArtifact(project.getGroupId(), config.getArtifactId(), project.getVersion(),
            project.getArtifact().getScope(), project.getArtifact().getType(),
            project.getArtifact().getClassifier(), project.getArtifact().getArtifactHandler()));

    toBuild.setParent(project.getParent());
    toBuild.getModel().setParent(project.getModel().getParent());

    toBuild.setGroupId(project.getGroupId());
    toBuild.setArtifactId(config.getArtifactId());
    toBuild.setVersion(project.getVersion());
    toBuild.setPackaging("pom");
    toBuild.setName(config.getName());
    toBuild.setDescription(config.getDescription());

    toBuild.setUrl(project.getUrl());
    toBuild.setLicenses(project.getLicenses());
    toBuild.setScm(project.getScm());
    toBuild.setDevelopers(project.getDevelopers());
    toBuild.setDistributionManagement(project.getDistributionManagement());
    toBuild.getModel().setProfiles(project.getModel().getProfiles());

    //We want to avoid having the generated stuff wiped.
    toBuild.getProperties().put("clean.skip", "true");
    toBuild.getModel().getBuild().setDirectory(bomDir.getAbsolutePath());
    toBuild.getModel().getBuild().setOutputDirectory(new File(bomDir, "target").getAbsolutePath());
    for (String key : config.getProperties().stringPropertyNames()) {
        toBuild.getProperties().put(key, config.getProperties().getProperty(key));
    }
    return toBuild;
}

From source file:ms.dew.devops.kernel.plugin.deploy.maven.MavenDeployPlugin.java

License:Apache License

@Override
public Resp<String> deployAble(FinalProjectConfig projectConfig) {
    MavenProject mavenProject = projectConfig.getMavenProject();
    String version = mavenProject.getVersion();
    if (version.trim().toLowerCase().endsWith("snapshot")) {
        // //from   w  ww  . ja  v  a  2 s  .  c  o  m
        if (mavenProject.getDistributionManagement() == null
                || mavenProject.getDistributionManagement().getSnapshotRepository() == null
                || mavenProject.getDistributionManagement().getSnapshotRepository().getUrl() == null
                || mavenProject.getDistributionManagement().getSnapshotRepository().getUrl().trim().isEmpty()) {
            return Resp.forbidden("Maven distribution snapshot repository not found");
        }
    } else if (mavenProject.getDistributionManagement() == null
            || mavenProject.getDistributionManagement().getRepository() == null
            || mavenProject.getDistributionManagement().getRepository().getUrl() == null
            || mavenProject.getDistributionManagement().getRepository().getUrl().trim().isEmpty()) {
        // ??
        return Resp.forbidden("Maven distribution repository not found");
    }
    String repoUrl = mavenProject.getDistributionManagement().getRepository().getUrl().trim();
    // TBD auth
    repoUrl = repoUrl.endsWith("/") ? repoUrl : repoUrl + "/";
    repoUrl += mavenProject.getGroupId().replaceAll("\\.", "/") + "/" + mavenProject.getArtifactId() + "/"
            + version;
    try {
        if ($.http.getWrap(repoUrl).statusCode == 200) {
            return Resp.forbidden("The current version already exists");
        }
    } catch (IOException e) {
        throw new ProjectProcessException(e.getMessage(), e);
    }
    return Resp.success("");
}

From source file:net.oneandone.maven.plugins.prerelease.core.Descriptor.java

License:Apache License

public static Descriptor create(String prerelease, MavenProject mavenProject, long revision)
        throws MissingScmTag, MissingDeveloperConnection, CannotBumpVersion, CannotDeterminTagBase {
    Project project;//from   w  w  w  .j a v a  2  s . c o  m
    String svnOrig;
    String svnTag;
    DeploymentRepository repo;

    svnOrig = getSvnUrl(mavenProject);
    svnTag = tagurl(svnOrig, mavenProject);
    project = Project.forMavenProject(mavenProject, releaseVersion(mavenProject));
    repo = mavenProject.getDistributionManagement().getRepository();
    return new Descriptor(prerelease, revision, svnOrig, svnTag, project, repo.getId() + "::" + repo.getUrl(),
            "maven-plugin".equals(mavenProject.getPackaging()), mavenProject.getVersion(),
            next(project.version), new HashMap<String, String>());
}

From source file:org.appformer.maven.integration.MavenRepository.java

License:Apache License

protected RemoteRepository getRemoteRepositoryFromDistributionManagement(File pomfile) {
    MavenProject mavenProject = parseMavenPom(pomfile);
    DistributionManagement distMan = mavenProject.getDistributionManagement();
    if (distMan == null) {
        return null;
    }//  w w  w  .j  a v  a 2s.  co m
    DeploymentRepository deployRepo = distMan.getSnapshotRepository() != null
            && mavenProject.getVersion().endsWith("SNAPSHOT") ? distMan.getSnapshotRepository()
                    : distMan.getRepository();
    if (deployRepo == null) {
        return null;
    }

    RemoteRepository.Builder remoteRepoBuilder = new RemoteRepository.Builder(deployRepo.getId(),
            deployRepo.getLayout(), deployRepo.getUrl())
                    .setSnapshotPolicy(new RepositoryPolicy(true, RepositoryPolicy.UPDATE_POLICY_DAILY,
                            RepositoryPolicy.CHECKSUM_POLICY_WARN))
                    .setReleasePolicy(new RepositoryPolicy(true, RepositoryPolicy.UPDATE_POLICY_ALWAYS,
                            RepositoryPolicy.CHECKSUM_POLICY_WARN));

    Server server = MavenSettings.getSettings().getServer(deployRepo.getId());
    if (server != null) {
        MavenEmbedder embedder = MavenProjectLoader.newMavenEmbedder(false);
        try {
            Authentication authentication = embedder.getMavenSession().getRepositorySession()
                    .getAuthenticationSelector().getAuthentication(remoteRepoBuilder.build());
            remoteRepoBuilder.setAuthentication(authentication);
        } finally {
            embedder.dispose();
        }
    }

    return remoteRepoBuilder.build();
}

From source file:org.arakhne.maven.plugins.atomicdeploy.JavadocMojo.java

License:Open Source License

private static URL getSiteDeploymentURL(MavenProject project, String targetDirectoryName) {
    DistributionManagement distManagement = project.getDistributionManagement();
    if (distManagement != null) {
        Site site = distManagement.getSite();
        if (site != null) {
            String url = site.getUrl();
            if (url != null && url.length() > 0) {
                try {
                    return new URL(url + "/" + targetDirectoryName); //$NON-NLS-1$
                } catch (Throwable e) {
                    //
                }/*from w ww.  j  av a 2  s .  co  m*/
            }
        }
    }
    return null;
}

From source file:org.guvnor.common.services.project.backend.server.RepositoryResolverTestUtils.java

License:Apache License

/**
 * Deploy a Maven Project to the 'Remote' Maven Repository defined in the Project's {code}<distribtionManagement>{code} section.
 * @param mavenProject/*  ww  w.j  ava 2 s. c o  m*/
 * @param pomXml
 */
public static void deployArtifact(final MavenProject mavenProject, final String pomXml) {
    final ReleaseId releaseId = new ReleaseIdImpl(mavenProject.getGroupId(), mavenProject.getArtifactId(),
            mavenProject.getVersion());

    //Create temporary files for the JAR and POM
    final Aether aether = new Aether(mavenProject);
    final File jarFile = new File(System.getProperty("java.io.tmpdir"), toFileName(releaseId, null) + ".jar");
    try {
        FileOutputStream fos = new FileOutputStream(jarFile);
        fos.write("content".getBytes());
        fos.flush();
        fos.close();
    } catch (IOException e) {
        throw new RuntimeException(e);
    }
    final File pomFile = new File(System.getProperty("java.io.tmpdir"), toFileName(releaseId, null) + ".pom");
    try {
        FileOutputStream fos = new FileOutputStream(pomFile);
        fos.write(pomXml.getBytes());
        fos.flush();
        fos.close();
    } catch (IOException e) {
        throw new RuntimeException(e);
    }

    //Artifact representing the JAR
    Artifact jarArtifact = new DefaultArtifact(releaseId.getGroupId(), releaseId.getArtifactId(), "jar",
            releaseId.getVersion());
    jarArtifact = jarArtifact.setFile(jarFile);

    //Artifact representing the POM
    Artifact pomArtifact = new SubArtifact(jarArtifact, "", "pom");
    pomArtifact = pomArtifact.setFile(pomFile);

    //Read <distributionManagement> section
    final DistributionManagement distributionManagement = mavenProject.getDistributionManagement();
    if (distributionManagement != null) {
        final DeployRequest deployRequest = new DeployRequest();
        deployRequest.addArtifact(jarArtifact).addArtifact(pomArtifact).setRepository(
                getRemoteRepoFromDeployment(distributionManagement.getRepository(), aether.getSession()));

        try {
            aether.getSystem().deploy(aether.getSession(), deployRequest);
        } catch (DeploymentException e) {
            throw new RuntimeException(e);
        }
    }
}

From source file:org.guvnor.m2repo.backend.server.GuvnorM2Repository.java

License:Apache License

private DistributionManagement getDistributionManagement(final String pomXML) {
    final InputStream is = new ByteArrayInputStream(pomXML.getBytes(Charset.forName("UTF-8")));
    try {/*from  w  ww . j a v a2s .c  om*/
        //Get the effective POM as the DistributionManagement section may be in a parent POM
        final MavenProject project = MavenProjectLoader.parseMavenPom(is);
        final DistributionManagement distributionManagement = project.getDistributionManagement();

        return distributionManagement;

    } finally {
        try {
            is.close();
        } catch (IOException ioe) {
            //Swallow
        }
    }

}