All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.itemis.maven.plugins.unleash.util.functions.ProjectToString Maven / Gradle / Ivy

Go to download

This plugin provides a generic alternative to the error-prone default release plugin provided by Maven. It is designed to require a minimal effort of work for releasing modules and being extensible to integrate in every project setup.

There is a newer version: 3.2.0
Show newest version
package com.itemis.maven.plugins.unleash.util.functions;

import org.apache.maven.project.MavenProject;

import com.google.common.base.Function;

/**
 * A function to convert a {@link Project} to its String representation in coordinates format.
* There are two implementations that either include or exclude the project packaging. * * @author Stanley Hillner * @since 1.0.0 */ public enum ProjectToString implements Function { /** * The default instance which prints the groupId, artifactId and the version. */ INSTANCE(false, true), /** * An instance which uses the groupId, the artifactId, the version and the packaging of the artifact. */ INCLUDE_PACKAGING(true, true), /** * An instance which only prints the groupId and the artifactId. */ EXCLUDE_VERSION(false, false); private boolean includePackaging; private boolean includeVersion; private ProjectToString(boolean includePackaging, boolean includeVersion) { this.includePackaging = includePackaging; this.includeVersion = includeVersion; } @Override public String apply(MavenProject p) { StringBuilder sb = new StringBuilder(p.getGroupId()); sb.append(":").append(p.getArtifactId()); if (this.includePackaging && p.getPackaging() != null) { sb.append(":").append(p.getPackaging()); } if (this.includeVersion && p.getVersion() != null) { sb.append(":").append(p.getVersion()); } return sb.toString(); } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy