import org.argeo.slc.DefaultCategoryNameVersion;
+/**
+ * Simple representation of an M2 artifact, not taking into account classifiers,
+ * types, etc.
+ */
public class DefaultArtifact extends DefaultCategoryNameVersion implements Artifact {
+ private String classifier;
+
+ public DefaultArtifact(String m2coordinates) {
+ this(m2coordinates, null);
+ }
+
+ public DefaultArtifact(String m2coordinates, String classifier) {
+ String[] parts = m2coordinates.split(":");
+ setCategory(parts[0]);
+ setName(parts[1]);
+ if (parts.length > 2) {
+ setVersion(parts[2]);
+ }
+ this.classifier = classifier;
+ }
@Override
public String getGroupId() {
return getName();
}
+ public String toM2Coordinates() {
+ return getCategory() + ":" + getName() + (getVersion() != null ? ":" + getVersion() : "");
+ }
+
+ public String getClassifier() {
+ return classifier != null ? classifier : "";
+ }
+
}