From 85f08be9b08c3938d25c46cae5b56dd0c4543cc7 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Fri, 27 Apr 2012 13:58:08 +0000 Subject: [PATCH] Generate SDK pom git-svn-id: https://svn.argeo.org/slc/trunk@5287 4cfe0d0a-d680-48aa-b62c-e0a02a3f76cc --- .../repo/maven/ImportMavenDependencies.java | 10 +++- .../slc/repo/maven/MavenConventionsUtils.java | 56 +++++++++++++++++++ 2 files changed, 63 insertions(+), 3 deletions(-) diff --git a/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/maven/ImportMavenDependencies.java b/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/maven/ImportMavenDependencies.java index e0a8d067b..3f0015465 100644 --- a/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/maven/ImportMavenDependencies.java +++ b/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/maven/ImportMavenDependencies.java @@ -101,12 +101,16 @@ public class ImportMavenDependencies implements Runnable { artifactComparator); MavenConventionsUtils.gatherPomDependencies(aetherTemplate, registeredArtifacts, pomArtifact); + Artifact sdkArtifact = new DefaultArtifact( + "org.argeo.tp:dist:pom:1.3.0"); + String sdkPom = MavenConventionsUtils.artifactsAsDependencyPom( + sdkArtifact, registeredArtifacts); if (log.isDebugEnabled()) log.debug("Gathered " + registeredArtifacts.size() - + " artifacts"); - + + " artifacts:\n" + sdkPom); // Resolve and add non-optional dependencies Set artifacts = new TreeSet(artifactComparator); + /* for (Artifact artifact : registeredArtifacts) { try { Boolean wasAdded = addArtifact(artifacts, artifact); @@ -132,7 +136,7 @@ public class ImportMavenDependencies implements Runnable { // distributionDescriptor.store(out, ""); // log.debug(new String(out.toByteArray())); // out.close(); - +*/ return artifacts; } catch (Exception e) { throw new SlcException("Cannot resolve distribution", e); diff --git a/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/maven/MavenConventionsUtils.java b/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/maven/MavenConventionsUtils.java index cce0c12ae..3531515cd 100644 --- a/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/maven/MavenConventionsUtils.java +++ b/runtime/org.argeo.slc.repo/src/main/java/org/argeo/slc/repo/maven/MavenConventionsUtils.java @@ -76,6 +76,62 @@ public class MavenConventionsUtils { + artifact.getArtifactId() + '/' + artifact.getVersion(); } + public static String artifactsAsDependencyPom(Artifact pomArtifact, + Set artifacts) { + StringBuffer b = new StringBuffer(); + + // XML header + b.append("\n"); + b.append("\n"); + b.append("4.0.0"); + + // Artifact + b.append("org.argeoparent1.2.0\n"); + b.append("").append(pomArtifact.getGroupId()) + .append("\n"); + b.append("").append(pomArtifact.getArtifactId()) + .append("\n"); + b.append("").append(pomArtifact.getVersion()) + .append("\n"); + b.append("pom\n"); + + // Dependencies + b.append("\n"); + for (Artifact artifact : artifacts) { + b.append("\t"); + b.append("").append(artifact.getArtifactId()) + .append(""); + b.append("").append(artifact.getGroupId()) + .append(""); + b.append("\n"); + } + b.append("\n"); + + // Dependency management + b.append("\n"); + b.append("\n"); + for (Artifact artifact : artifacts) { + b.append("\t"); + b.append("").append(artifact.getArtifactId()) + .append(""); + b.append("").append(artifact.getVersion()) + .append(""); + b.append("").append(artifact.getGroupId()) + .append(""); + b.append("\n"); + } + b.append("\n"); + b.append("\n"); + + // Repositories + b.append("\n"); + b.append("argeohttp://maven.argeo.org/argeo\n"); + b.append("\n"); + + b.append("\n"); + return b.toString(); + } + /** * Directly parses Maven POM XML format in order to find all artifacts * references under the dependency and dependencyManagement tags. This is -- 2.39.2