summaryrefslogtreecommitdiff
path: root/src/main/java/org/apache/maven/plugin/nar/AttachedNarArtifact.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/org/apache/maven/plugin/nar/AttachedNarArtifact.java')
-rw-r--r--src/main/java/org/apache/maven/plugin/nar/AttachedNarArtifact.java66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/main/java/org/apache/maven/plugin/nar/AttachedNarArtifact.java b/src/main/java/org/apache/maven/plugin/nar/AttachedNarArtifact.java
new file mode 100644
index 0000000..cf6881d
--- /dev/null
+++ b/src/main/java/org/apache/maven/plugin/nar/AttachedNarArtifact.java
@@ -0,0 +1,66 @@
+// Copyright 2005-2007, FreeHEP.
+package org.freehep.maven.nar;
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.DefaultArtifact;
+import org.apache.maven.artifact.handler.ArtifactHandler;
+import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException;
+import org.apache.maven.artifact.versioning.VersionRange;
+
+/**
+ * NarArtifact with its own type, classifier and artifactHandler.
+ *
+ * @author Mark Donszelmann
+ * @version $Id: plugin/src/main/java/org/freehep/maven/nar/AttachedNarArtifact.java 54f05023f537 2007/07/24 05:44:30 duns $
+ */
+public class AttachedNarArtifact extends DefaultArtifact {
+
+ public AttachedNarArtifact(String groupId, String artifactId, String version, String scope,
+ String type, String classifier, boolean optional) throws InvalidVersionSpecificationException {
+ super(groupId, artifactId, VersionRange.createFromVersionSpec(version), scope,
+ type, classifier, null, optional);
+ setArtifactHandler(new Handler(classifier));
+ }
+
+ public AttachedNarArtifact(Artifact parent, String type, String classifier) {
+ super(parent.getGroupId(), parent.getArtifactId(), parent.getVersionRange(), parent.getScope(),
+ type, classifier, null, parent.isOptional());
+ setArtifactHandler(new Handler(classifier));
+ }
+
+ private class Handler implements ArtifactHandler {
+ private String classifier;
+
+ Handler(String classifier) {
+ this.classifier = classifier;
+ }
+
+ public String getExtension() {
+ return "nar";
+ }
+
+ public String getDirectory() {
+ return "nars";
+ }
+
+ public String getClassifier() {
+ return classifier;
+ }
+
+ public String getPackaging() {
+ return "nar";
+ }
+
+ public boolean isIncludesDependencies() {
+ return false;
+ }
+
+ public String getLanguage() {
+ return "native";
+ }
+
+ public boolean isAddedToClasspath() {
+ return false;
+ }
+ }
+}