]> git.argeo.org Git - gpl/argeo-slc.git/blobdiff - org.argeo.slc.repo/src/org/argeo/slc/repo/maven/ConvertPoms_01_03.java
Clarify SLC project structure.
[gpl/argeo-slc.git] / org.argeo.slc.repo / src / org / argeo / slc / repo / maven / ConvertPoms_01_03.java
diff --git a/org.argeo.slc.repo/src/org/argeo/slc/repo/maven/ConvertPoms_01_03.java b/org.argeo.slc.repo/src/org/argeo/slc/repo/maven/ConvertPoms_01_03.java
deleted file mode 100644 (file)
index d46375e..0000000
+++ /dev/null
@@ -1,211 +0,0 @@
-package org.argeo.slc.repo.maven;
-
-import java.io.File;
-import java.util.HashMap;
-
-import javax.xml.parsers.DocumentBuilder;
-import javax.xml.parsers.DocumentBuilderFactory;
-import javax.xml.transform.Result;
-import javax.xml.transform.Source;
-import javax.xml.transform.Transformer;
-import javax.xml.transform.TransformerFactory;
-import javax.xml.transform.dom.DOMSource;
-import javax.xml.transform.stream.StreamResult;
-
-import org.w3c.dom.Document;
-import org.w3c.dom.Element;
-import org.w3c.dom.Node;
-import org.w3c.dom.NodeList;
-
-/** Recursively migrate all the POMs to Argeo Distribution v1.3 */
-public class ConvertPoms_01_03 implements Runnable {
-       final String SPRING_SOURCE_PREFIX = "com.springsource";
-
-       private HashMap<String, String> artifactMapping = new HashMap<String, String>();
-
-       private File rootDir;
-
-       public ConvertPoms_01_03(String rootDirPath) {
-               this(new File(rootDirPath));
-       }
-
-       public ConvertPoms_01_03(File rootDir) {
-               this.rootDir = rootDir;
-
-               artifactMapping.put("org.argeo.dep.jacob", "com.jacob");
-               artifactMapping.put("org.argeo.dep.jacob.win32.x86",
-                               "com.jacob.win32.x86");
-               artifactMapping.put("org.argeo.dep.osgi.activemq",
-                               "org.apache.activemq");
-               artifactMapping.put("org.argeo.dep.osgi.activemq.optional",
-                               "org.apache.activemq.optional");
-               artifactMapping.put("org.argeo.dep.osgi.activemq.xmpp",
-                               "org.apache.activemq.xmpp");
-               artifactMapping.put("org.argeo.dep.osgi.aether", "org.eclipse.aether");
-               artifactMapping.put("org.argeo.dep.osgi.boilerpipe",
-                               "de.l3s.boilerpipe");
-               artifactMapping.put("org.argeo.dep.osgi.commons.cli",
-                               "org.apache.commons.cli");
-               artifactMapping.put("org.argeo.dep.osgi.commons.exec",
-                               "org.apache.commons.exec");
-               artifactMapping.put("org.argeo.dep.osgi.directory.shared.asn.codec",
-                               "org.apache.directory.shared.asn.codec");
-               artifactMapping.put("org.argeo.dep.osgi.drewnoakes.metadata_extractor",
-                               "com.drewnoakes.metadata_extractor");
-               artifactMapping.put("org.argeo.dep.osgi.geoapi", "org.opengis");
-               artifactMapping.put("org.argeo.dep.osgi.geotools", "org.geotools");
-               artifactMapping.put("org.argeo.dep.osgi.google.collections",
-                               "com.google.collections");
-               artifactMapping.put("org.argeo.dep.osgi.hibernatespatial",
-                               "org.hibernatespatial");
-               artifactMapping.put("org.argeo.dep.osgi.jackrabbit",
-                               "org.apache.jackrabbit");
-               artifactMapping.put("org.argeo.dep.osgi.jai.imageio",
-                               "com.sun.media.jai.imageio");
-               artifactMapping.put("org.argeo.dep.osgi.java3d", "javax.vecmath");
-               artifactMapping.put("org.argeo.dep.osgi.jcr", "javax.jcr");
-               artifactMapping.put("org.argeo.dep.osgi.jsr275", "javax.measure");
-               artifactMapping.put("org.argeo.dep.osgi.jts", "com.vividsolutions.jts");
-               artifactMapping.put("org.argeo.dep.osgi.mina.filter.ssl",
-                               "org.apache.mina.filter.ssl");
-               artifactMapping.put("org.argeo.dep.osgi.modeshape", "org.modeshape");
-               artifactMapping.put("org.argeo.dep.osgi.netcdf",
-                               "edu.ucar.unidata.netcdf");
-               artifactMapping.put("org.argeo.dep.osgi.pdfbox", "org.apache.pdfbox");
-               artifactMapping.put("org.argeo.dep.osgi.poi", "org.apache.poi");
-               artifactMapping.put("org.argeo.dep.osgi.postgis.jdbc",
-                               "org.postgis.jdbc");
-               artifactMapping.put("org.argeo.dep.osgi.springframework.ldap",
-                               "org.springframework.ldap");
-               artifactMapping.put("org.argeo.dep.osgi.tagsoup",
-                               "org.ccil.cowan.tagsoup");
-               artifactMapping.put("org.argeo.dep.osgi.tika", "org.apache.tika");
-       }
-
-       public void run() {
-               traverse(rootDir);
-       }
-
-       protected void traverse(File dir) {
-               for (File file : dir.listFiles()) {
-                       String fileName = file.getName();
-                       if (file.isDirectory() && !skipDirName(fileName)) {
-                               traverse(file);
-                       } else if (fileName.equals("pom.xml")) {
-                               processPom(file);
-                       }
-               }
-       }
-
-       protected Boolean skipDirName(String fileName) {
-               return fileName.equals(".svn") || fileName.equals("target")
-                               || fileName.equals("META-INF") || fileName.equals("src");
-       }
-
-       protected void processPom(File pomFile) {
-               try {
-                       Boolean wasChanged = false;
-                       DocumentBuilderFactory dbFactory = DocumentBuilderFactory
-                                       .newInstance();
-                       DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
-                       Document doc = dBuilder.parse(pomFile);
-                       doc.getDocumentElement().normalize();
-
-                       Element dependenciesElement = null;
-                       NodeList rootChildren = doc.getDocumentElement().getChildNodes();
-                       for (int temp = 0; temp < rootChildren.getLength(); temp++) {
-                               Node n = rootChildren.item(temp);
-                               if (n.getNodeName().equals("dependencies"))
-                                       dependenciesElement = (Element) n;
-                       }
-
-                       if (dependenciesElement != null) {
-                               stdOut("\n## " + pomFile);
-                               NodeList dependencyElements = dependenciesElement
-                                               .getElementsByTagName("dependency");
-
-                               for (int temp = 0; temp < dependencyElements.getLength(); temp++) {
-                                       Element eElement = (Element) dependencyElements.item(temp);
-                                       String groupId = getTagValue(eElement, "groupId");
-                                       String artifactId = getTagValue(eElement, "artifactId");
-                                       // stdOut(groupId + ":" + artifactId);
-
-                                       String newGroupId = null;
-                                       String newArtifactId = null;
-                                       if (groupId.startsWith("org.argeo.dep")) {
-                                               newGroupId = "org.argeo.tp";
-                                       } else if (!(groupId.startsWith("org.argeo")
-                                                       || groupId.startsWith("com.capco")
-                                                       || groupId.startsWith("com.agfa") || groupId
-                                                       .startsWith("org.ibboost"))) {
-                                               newGroupId = "org.argeo.tp";
-                                       }
-
-                                       if (artifactMapping.containsKey(artifactId)) {
-                                               newArtifactId = artifactMapping.get(artifactId);
-                                       } else if (artifactId.startsWith(SPRING_SOURCE_PREFIX)
-                                                       && !artifactId.equals(SPRING_SOURCE_PREFIX
-                                                                       + ".json")) {
-                                               newArtifactId = artifactId
-                                                               .substring(SPRING_SOURCE_PREFIX.length() + 1);
-                                       }
-
-                                       // modify
-                                       if (newGroupId != null || newArtifactId != null) {
-                                               if (newGroupId == null)
-                                                       newGroupId = groupId;
-                                               if (newArtifactId == null)
-                                                       newArtifactId = artifactId;
-                                               stdOut(groupId + ":" + artifactId + " => " + newGroupId
-                                                               + ":" + newArtifactId);
-                                               setTagValue(eElement, "groupId", newGroupId);
-                                               setTagValue(eElement, "artifactId", newArtifactId);
-                                               wasChanged = true;
-                                       }
-                               }
-                       }
-
-                       if (wasChanged) {
-                               // pomFile.renameTo(new File(pomFile.getParentFile(),
-                               // "pom-old.xml"));
-                               // save in place
-                               Source source = new DOMSource(doc);
-                               Result result = new StreamResult(pomFile);
-                               Transformer xformer = TransformerFactory.newInstance()
-                                               .newTransformer();
-                               xformer.transform(source, result);
-                       }
-               } catch (Exception e) {
-                       throw new RuntimeException("Cannot process " + pomFile, e);
-               }
-
-       }
-
-       private String getTagValue(Element eElement, String sTag) {
-               NodeList nList = eElement.getElementsByTagName(sTag);
-               if (nList.getLength() > 0) {
-                       NodeList nlList = nList.item(0).getChildNodes();
-                       Node nValue = (Node) nlList.item(0);
-                       return nValue.getNodeValue();
-               } else
-                       return null;
-       }
-
-       private void setTagValue(Element eElement, String sTag, String value) {
-               NodeList nList = eElement.getElementsByTagName(sTag);
-               if (nList.getLength() > 0) {
-                       NodeList nlList = nList.item(0).getChildNodes();
-                       Node nValue = (Node) nlList.item(0);
-                       nValue.setNodeValue(value);
-               }
-       }
-
-       public static void stdOut(Object obj) {
-               System.out.println(obj);
-       }
-
-       public static void main(String argv[]) {
-               new ConvertPoms_01_03(argv[0]).run();
-       }
-
-}