You are viewing a plain text version of this content. The canonical link for it is here.
Posted to doxia-commits@maven.apache.org by vs...@apache.org on 2008/10/28 11:40:10 UTC

svn commit: r708518 - in /maven/doxia/doxia/trunk/doxia-modules: doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/ doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ doxia-module-docbook-simple/src/main/java...

Author: vsiveton
Date: Tue Oct 28 03:40:09 2008
New Revision: 708518

URL: http://svn.apache.org/viewvc?rev=708518&view=rev
Log:
o added more check in SinkFactorys

Modified:
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptSinkFactory.java
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceSinkFactory.java
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocbookSinkFactory.java
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-fo/src/main/java/org/apache/maven/doxia/module/fo/FoSinkFactory.java
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-itext/src/main/java/org/apache/maven/doxia/module/itext/ITextSinkFactory.java
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-latex/src/main/java/org/apache/maven/doxia/module/latex/LatexSinkFactory.java
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-rtf/src/main/java/org/apache/maven/doxia/module/rtf/RtfSinkFactory.java
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiSinkFactory.java
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocSinkFactory.java
    maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkFactory.java

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-apt/src/main/java/org/apache/maven/doxia/module/apt/AptSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -42,9 +42,21 @@
     public Sink createSink( File outputDir, String outputName )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         Writer writer = WriterFactory.newWriter( new File( outputDir, outputName ), WriterFactory.UTF_8 );

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-confluence/src/main/java/org/apache/maven/doxia/module/confluence/ConfluenceSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -42,9 +42,21 @@
     public Sink createSink( File outputDir, String outputName )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         Writer writer = WriterFactory.newWriter( new File( outputDir, outputName ), WriterFactory.UTF_8 );

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocbookSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocbookSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocbookSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-docbook-simple/src/main/java/org/apache/maven/doxia/module/docbook/DocbookSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -42,9 +42,21 @@
     public Sink createSink( File outputDir, String outputName )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         Writer writer = WriterFactory.newXmlWriter( new File( outputDir, outputName ) );

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-fo/src/main/java/org/apache/maven/doxia/module/fo/FoSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-fo/src/main/java/org/apache/maven/doxia/module/fo/FoSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-fo/src/main/java/org/apache/maven/doxia/module/fo/FoSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-fo/src/main/java/org/apache/maven/doxia/module/fo/FoSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -42,9 +42,21 @@
     public Sink createSink( File outputDir, String outputName )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         Writer writer = WriterFactory.newXmlWriter( new File( outputDir, outputName ) );

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-itext/src/main/java/org/apache/maven/doxia/module/itext/ITextSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-itext/src/main/java/org/apache/maven/doxia/module/itext/ITextSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-itext/src/main/java/org/apache/maven/doxia/module/itext/ITextSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-itext/src/main/java/org/apache/maven/doxia/module/itext/ITextSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -26,6 +26,7 @@
 import org.apache.maven.doxia.sink.Sink;
 import org.apache.maven.doxia.sink.SinkFactory;
 import org.codehaus.plexus.util.WriterFactory;
+import org.codehaus.plexus.util.xml.PrettyPrintXMLWriter;
 
 /**
  * IText implementation of the Sink factory.
@@ -42,9 +43,21 @@
     public Sink createSink( File outputDir, String outputName )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         Writer writer = WriterFactory.newXmlWriter( new File( outputDir, outputName ) );
@@ -68,4 +81,20 @@
     {
         return new ITextSink( writer );
     }
+
+    /**
+     * Create a <code>Sink</code> into a PrettyPrintXMLWriter.
+     *
+     * @param xmlWriter not null XML writer to write the result. <b>Should</b> be an UTF-8 Writer.
+     * @return a <code>Sink</code> instance.
+     */
+    public Sink createSink( PrettyPrintXMLWriter xmlWriter )
+    {
+        if ( xmlWriter == null )
+        {
+            throw new IllegalArgumentException( "xmlWriter could not be null." );
+        }
+
+        return new ITextSink( xmlWriter );
+    }
 }

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-latex/src/main/java/org/apache/maven/doxia/module/latex/LatexSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-latex/src/main/java/org/apache/maven/doxia/module/latex/LatexSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-latex/src/main/java/org/apache/maven/doxia/module/latex/LatexSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-latex/src/main/java/org/apache/maven/doxia/module/latex/LatexSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -42,9 +42,21 @@
     public Sink createSink( File outputDir, String outputName )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         Writer writer = WriterFactory.newWriter( new File( outputDir, outputName ), WriterFactory.UTF_8 );

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-rtf/src/main/java/org/apache/maven/doxia/module/rtf/RtfSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-rtf/src/main/java/org/apache/maven/doxia/module/rtf/RtfSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-rtf/src/main/java/org/apache/maven/doxia/module/rtf/RtfSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-rtf/src/main/java/org/apache/maven/doxia/module/rtf/RtfSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -51,9 +51,21 @@
     public Sink createSink( File outputDir, String outputName, String encoding )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         OutputStream os = new FileOutputStream( new File( outputDir, outputName ) );

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-twiki/src/main/java/org/apache/maven/doxia/module/twiki/TWikiSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -42,9 +42,21 @@
     public Sink createSink( File outputDir, String outputName )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         Writer writer = WriterFactory.newWriter( new File( outputDir, outputName ), WriterFactory.UTF_8 );

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/main/java/org/apache/maven/doxia/module/xdoc/XdocSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -42,9 +42,21 @@
     public Sink createSink( File outputDir, String outputName )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         Writer writer = WriterFactory.newXmlWriter( new File( outputDir, outputName ) );

Modified: maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkFactory.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkFactory.java?rev=708518&r1=708517&r2=708518&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkFactory.java (original)
+++ maven/doxia/doxia/trunk/doxia-modules/doxia-module-xhtml/src/main/java/org/apache/maven/doxia/module/xhtml/XhtmlSinkFactory.java Tue Oct 28 03:40:09 2008
@@ -42,9 +42,21 @@
     public Sink createSink( File outputDir, String outputName )
         throws IOException
     {
-        if ( !outputDir.isDirectory() )
+        if ( outputDir == null )
         {
-            throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory or not exist" );
+            throw new IllegalArgumentException( "outputDir could not be null." );
+        }
+
+        if ( !outputDir.exists() )
+        {
+            outputDir.mkdirs();
+        }
+        else
+        {
+            if ( !outputDir.isDirectory() )
+            {
+                throw new IllegalArgumentException( "The dir '" + outputDir + "' is not a directory." );
+            }
         }
 
         Writer writer = WriterFactory.newXmlWriter( new File( outputDir, outputName ) );