]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.build/src/org/argeo/slc/build/m2/DefaultArtifact.java
Implement m2 based distribution unit.
[gpl/argeo-slc.git] / org.argeo.slc.build / src / org / argeo / slc / build / m2 / DefaultArtifact.java
index 922a0aa444bb6fbffdad0a31e6d6a290127d72dc..bf9782216ff52a853d25f7b5ceea767857673306 100644 (file)
@@ -2,7 +2,26 @@ package org.argeo.slc.build.m2;
 
 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() {
@@ -14,4 +33,12 @@ public class DefaultArtifact extends DefaultCategoryNameVersion implements Artif
                return getName();
        }
 
+       public String toM2Coordinates() {
+               return getCategory() + ":" + getName() + (getVersion() != null ? ":" + getVersion() : "");
+       }
+
+       public String getClassifier() {
+               return classifier != null ? classifier : "";
+       }
+
 }