]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/maven/MavenConventionsUtils.java
Improve distribution
[gpl/argeo-slc.git] / runtime / org.argeo.slc.repo / src / main / java / org / argeo / slc / repo / maven / MavenConventionsUtils.java
index a19e0725a6fafa08bf55daba74f5c61f3dba3f68..4e8d3fb832f54ac6c6f24d905e4c8850682f3209 100644 (file)
@@ -1,3 +1,18 @@
+/*
+ * Copyright (C) 2007-2012 Argeo GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *         http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 package org.argeo.slc.repo.maven;
 
 import java.io.File;
@@ -85,20 +100,29 @@ public class MavenConventionsUtils {
        /** Relative path to the directories where the files will be stored */
        public static String artifactParentPath(Artifact artifact) {
                return artifact.getGroupId().replace('.', '/') + '/'
-                               + artifact.getArtifactId() + '/' + artifact.getVersion();
+                               + artifact.getArtifactId() + '/' + artifact.getBaseVersion();
        }
 
        public static String artifactsAsDependencyPom(Artifact pomArtifact,
-                       Set<Artifact> artifacts) {
+                       Set<Artifact> artifacts, Artifact parent) {
                StringBuffer p = new StringBuffer();
 
                // XML header
                p.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n");
                p.append("<project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xsi:schemaLocation=\"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd\">\n");
-               p.append("<modelVersion>4.0.0</modelVersion>");
+               p.append("<modelVersion>4.0.0</modelVersion>\n");
 
                // Artifact
-               p.append("<parent><groupId>org.argeo</groupId><artifactId>parent</artifactId><version>1.2.0</version></parent>\n");
+               if (parent != null) {
+                       p.append("<parent>\n");
+                       p.append("<groupId>").append(parent.getGroupId())
+                                       .append("</groupId>\n");
+                       p.append("<artifactId>").append(parent.getArtifactId())
+                                       .append("</artifactId>\n");
+                       p.append("<version>").append(parent.getVersion())
+                                       .append("</version>\n");
+                       p.append("</parent>\n");
+               }
                p.append("<groupId>").append(pomArtifact.getGroupId())
                                .append("</groupId>\n");
                p.append("<artifactId>").append(pomArtifact.getArtifactId())
@@ -139,9 +163,9 @@ public class MavenConventionsUtils {
                p.append("</dependencyManagement>\n");
 
                // Repositories
-               p.append("<repositories>\n");
-               p.append("<repository><id>argeo</id><url>http://maven.argeo.org/argeo</url></repository>\n");
-               p.append("</repositories>\n");
+               // p.append("<repositories>\n");
+               // p.append("<repository><id>argeo</id><url>http://maven.argeo.org/argeo</url></repository>\n");
+               // p.append("</repositories>\n");
 
                p.append("</project>\n");
                return p.toString();