[infinispan-commits] Infinispan SVN: r906 - trunk/core/src/main/java/org/infinispan/config/parsing.

infinispan-commits at lists.jboss.org infinispan-commits at lists.jboss.org
Mon Oct 5 11:54:41 EDT 2009


Author: mircea.markus
Date: 2009-10-05 11:54:41 -0400 (Mon, 05 Oct 2009)
New Revision: 906

Modified:
   trunk/core/src/main/java/org/infinispan/config/parsing/ConfigFilesConvertor.java
Log:
added coherence migration scripts

Modified: trunk/core/src/main/java/org/infinispan/config/parsing/ConfigFilesConvertor.java
===================================================================
--- trunk/core/src/main/java/org/infinispan/config/parsing/ConfigFilesConvertor.java	2009-10-05 15:45:09 UTC (rev 905)
+++ trunk/core/src/main/java/org/infinispan/config/parsing/ConfigFilesConvertor.java	2009-10-05 15:54:41 UTC (rev 906)
@@ -57,7 +57,8 @@
    static final String JBOSS_CACHE3X = "JBossCache3x";
    static final String EHCACHE_CACHE16X = "Ehcache16x";
    static final String EHCACHE_CACHE15X = "Ehcache15x";
-   static final String[] SUPPORTED_FORMATS = {JBOSS_CACHE3X, EHCACHE_CACHE15X, EHCACHE_CACHE16X};
+   static final String COHERENCE_35X = "Coherence35x";
+   static final String[] SUPPORTED_FORMATS = {JBOSS_CACHE3X, EHCACHE_CACHE15X, EHCACHE_CACHE16X, COHERENCE_35X};
 
    public void parse(InputStream is, OutputStream os, String xsltFile) throws Exception {
       InputStream xsltInStream = new FileLookup().lookupFile(xsltFile);
@@ -140,6 +141,8 @@
          transformFromJbossCache3x(sourceName, destinationName);
       } else if (type.equals(EHCACHE_CACHE15X) || type.equals(EHCACHE_CACHE16X)) {
          transformFromEhcache15X_16x(sourceName, destinationName);
+      } else if (type.equals(COHERENCE_35X)) {
+         transformFromCoherence35x(sourceName, destinationName);
       }
 
       System.out.println("---");
@@ -147,7 +150,35 @@
       System.out.println("---");
    }
 
+   private static void transformFromCoherence35x(String sourceName, String destinationName) throws Exception {
+      File oldConfig = new File(sourceName);
+      if (!oldConfig.exists()) {
+         System.err.println("File specified as input ('" + sourceName + ") does not exist.");
+         System.exit(1);
+      }
+      ConfigFilesConvertor convertor = new ConfigFilesConvertor();
+      FileInputStream is = null;
+      FileOutputStream fos = null;
 
+      try {
+
+         is = new FileInputStream(oldConfig);
+         File destination = new File(destinationName);
+         if (!destination.exists()) {
+            if (!destination.createNewFile()) {
+               System.err.println("Warn! Could not create file " + destination);
+            }
+         }
+
+         fos = new FileOutputStream(destinationName);
+         convertor.parse(is, fos, "xslt/ehcache16x2infinispan4x.xslt");
+      } finally {
+         Util.flushAndCloseStream(fos);
+         Util.closeStream(is);
+      }
+   }
+
+
    private static void mustExist(String sourceName, String what) {
       if (sourceName == null) {
          System.err.println("Missing '" + what + "', cannot proceed");



More information about the infinispan-commits mailing list