You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by ge...@apache.org on 2010/06/18 23:34:36 UTC

svn commit: r956137 - in /servicemix/maven-plugins/docs-maven-plugin/trunk/src: main/java/org/apache/servicemix/docs/ main/java/org/apache/servicemix/docs/confluence/ test/resources/org/apache/servicemix/docs/confluence/

Author: gertv
Date: Fri Jun 18 21:34:36 2010
New Revision: 956137

URL: http://svn.apache.org/viewvc?rev=956137&view=rev
Log:
Recursively convert Confluence -> DocBook and add DocBook 5 namespace to root element

Modified:
    servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/ConfluenceToDocbookMojo.java
    servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/confluence/ConfluenceConverter.java
    servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/code-blocks.xml
    servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document1.xml
    servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document2.xml
    servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/images.xml
    servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/links.xml
    servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/lists.xml
    servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/tables.xml

Modified: servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/ConfluenceToDocbookMojo.java
URL: http://svn.apache.org/viewvc/servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/ConfluenceToDocbookMojo.java?rev=956137&r1=956136&r2=956137&view=diff
==============================================================================
--- servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/ConfluenceToDocbookMojo.java (original)
+++ servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/ConfluenceToDocbookMojo.java Fri Jun 18 21:34:36 2010
@@ -21,6 +21,7 @@ import java.io.FileReader;
 import java.io.FileWriter;
 import java.io.IOException;
 
+import org.apache.commons.io.FilenameUtils;
 import org.apache.maven.plugin.AbstractMojo;
 import org.apache.maven.plugin.MojoExecutionException;
 import org.apache.servicemix.docs.confluence.ConfluenceConverter;
@@ -51,28 +52,40 @@ public class ConfluenceToDocbookMojo ext
     private final FileFilter filter = new DefaultFileFilterImpl();
 
     public void execute() throws MojoExecutionException {
-        if (!output.exists()) {
-            output.mkdirs();
-        }
-        if (input.exists() && input.isDirectory()) {
-            for (File file : input.listFiles(filter)) {
-                getLog().info("Creating DocBook from " + file.getAbsolutePath());
-                FileWriter writer = null;
-                try {
-                    writer = new FileWriter(new File(output, file.getName() + ".xml"));
-
-                    ConfluenceConverter converter =
-                        new ConfluenceConverter(new FileReader(file), writer);
-                    
-                    converter.convert();
-                } catch (IOException e) {
-                    throw new MojoExecutionException("Unable to convert " + file, e);
-                } finally {
-                    if (writer != null) {
-                        try {
-                            writer.close();
-                        } catch (IOException e) {
-                            // ignore this
+        doConvert(input);
+    }
+
+    private void doConvert(File directory) throws MojoExecutionException {
+        if (directory.exists() && directory.isDirectory()) {
+            for (File file : directory.listFiles(filter)) {
+                if (file.isDirectory()) {
+                    doConvert(file);
+                } else {
+                    getLog().info("Creating DocBook from " + file.getAbsolutePath());
+                    FileWriter writer = null;
+                    try {
+                        String relativePath = FilenameUtils.getPath(file.getAbsolutePath().replace(input.getAbsolutePath(), ""));
+
+                        File result = new File(output + File.separator + relativePath, file.getName() + ".xml");
+                        if (!result.getParentFile().exists()) {
+                            result.getParentFile().mkdirs();
+                        }
+
+                        writer = new FileWriter(result);
+
+                        ConfluenceConverter converter =
+                            new ConfluenceConverter(new FileReader(file), writer);
+
+                        converter.convert();
+                    } catch (IOException e) {
+                        throw new MojoExecutionException("Unable to convert " + file, e);
+                    } finally {
+                        if (writer != null) {
+                            try {
+                                writer.close();
+                            } catch (IOException e) {
+                                // ignore this
+                            }
                         }
                     }
                 }

Modified: servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/confluence/ConfluenceConverter.java
URL: http://svn.apache.org/viewvc/servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/confluence/ConfluenceConverter.java?rev=956137&r1=956136&r2=956137&view=diff
==============================================================================
--- servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/confluence/ConfluenceConverter.java (original)
+++ servicemix/maven-plugins/docs-maven-plugin/trunk/src/main/java/org/apache/servicemix/docs/confluence/ConfluenceConverter.java Fri Jun 18 21:34:36 2010
@@ -251,7 +251,12 @@ public class ConfluenceConverter {
     }
 
     private void openElement(String element) {
-        writer.printf("%s<%s>%n", indent(), element);
+        if (elements.size() == 0) {
+            //adding namespace to root element
+            writer.printf("%s<%s xmlns=\"http://docbook.org/ns/docbook\">%n", indent(), element);   
+        } else {
+            writer.printf("%s<%s>%n", indent(), element);
+        }
         elements.push(element);
     }
 

Modified: servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/code-blocks.xml
URL: http://svn.apache.org/viewvc/servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/code-blocks.xml?rev=956137&r1=956136&r2=956137&view=diff
==============================================================================
--- servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/code-blocks.xml (original)
+++ servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/code-blocks.xml Fri Jun 18 21:34:36 2010
@@ -1,4 +1,4 @@
-<chapter>
+<chapter xmlns="http://docbook.org/ns/docbook">
   <title>Chapter</title>
   <section>
     <title>Section 1</title>

Modified: servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document1.xml
URL: http://svn.apache.org/viewvc/servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document1.xml?rev=956137&r1=956136&r2=956137&view=diff
==============================================================================
--- servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document1.xml (original)
+++ servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document1.xml Fri Jun 18 21:34:36 2010
@@ -1,4 +1,4 @@
-<chapter>
+<chapter xmlns="http://docbook.org/ns/docbook">
   <title>Chapter</title>
   <section>
     <title>Section 1</title>

Modified: servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document2.xml
URL: http://svn.apache.org/viewvc/servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document2.xml?rev=956137&r1=956136&r2=956137&view=diff
==============================================================================
--- servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document2.xml (original)
+++ servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/document2.xml Fri Jun 18 21:34:36 2010
@@ -1,4 +1,4 @@
-<chapter>
+<chapter xmlns="http://docbook.org/ns/docbook">
   <title>Chapter</title>
   <section>
     <title>Section 1</title>

Modified: servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/images.xml
URL: http://svn.apache.org/viewvc/servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/images.xml?rev=956137&r1=956136&r2=956137&view=diff
==============================================================================
--- servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/images.xml (original)
+++ servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/images.xml Fri Jun 18 21:34:36 2010
@@ -1,4 +1,4 @@
-<chapter>
+<chapter xmlns="http://docbook.org/ns/docbook">
   <title>Chapter</title>
   <section>
     <title>Section 1</title>

Modified: servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/links.xml
URL: http://svn.apache.org/viewvc/servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/links.xml?rev=956137&r1=956136&r2=956137&view=diff
==============================================================================
--- servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/links.xml (original)
+++ servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/links.xml Fri Jun 18 21:34:36 2010
@@ -1,4 +1,4 @@
-<chapter>
+<chapter xmlns="http://docbook.org/ns/docbook">
   <title>Chapter</title>
   <section>
     <title>Section 1</title>

Modified: servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/lists.xml
URL: http://svn.apache.org/viewvc/servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/lists.xml?rev=956137&r1=956136&r2=956137&view=diff
==============================================================================
--- servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/lists.xml (original)
+++ servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/lists.xml Fri Jun 18 21:34:36 2010
@@ -1,4 +1,4 @@
-<chapter>
+<chapter xmlns="http://docbook.org/ns/docbook">
   <title>Chapter</title>
   <section>
     <title>Section 1</title>

Modified: servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/tables.xml
URL: http://svn.apache.org/viewvc/servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/tables.xml?rev=956137&r1=956136&r2=956137&view=diff
==============================================================================
--- servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/tables.xml (original)
+++ servicemix/maven-plugins/docs-maven-plugin/trunk/src/test/resources/org/apache/servicemix/docs/confluence/tables.xml Fri Jun 18 21:34:36 2010
@@ -1,4 +1,4 @@
-<chapter>
+<chapter xmlns="http://docbook.org/ns/docbook">
   <title>Chapter</title>
   <section>
     <title>An informal table</title>