Author: vsiveton
Date: Fri Jun  5 13:14:04 2009
New Revision: 782009

URL: http://svn.apache.org/viewvc?rev=782009&view=rev
Log:
DOXIA-118: Image directory list field for PDF generation

o using itext.basedir system property defined with r781614

Modified:
    
maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/renderer/AbstractITextBookRenderer.java

Modified: 
maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/renderer/AbstractITextBookRenderer.java
URL: 
http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/renderer/AbstractITextBookRenderer.java?rev=782009&r1=782008&r2=782009&view=diff
==============================================================================
--- 
maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/renderer/AbstractITextBookRenderer.java
 (original)
+++ 
maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/renderer/AbstractITextBookRenderer.java
 Fri Jun  5 13:14:04 2009
@@ -42,6 +42,7 @@
 import org.apache.maven.doxia.parser.manager.ParserNotFoundException;
 import org.apache.maven.doxia.sink.Sink;
 import org.codehaus.plexus.logging.AbstractLogEnabled;
+import org.codehaus.plexus.util.IOUtil;
 import org.codehaus.plexus.util.ReaderFactory;
 import org.codehaus.plexus.util.StringUtils;
 import org.codehaus.plexus.util.WriterFactory;
@@ -136,22 +137,23 @@
 
         // TODO: Write out TOC
 
-        for ( Iterator it = book.getChapters().iterator(); it.hasNext(); )
-        {
-            Chapter chapter = (Chapter) it.next();
-
-            renderChapter( writer, chapter, context );
-        }
-
-        writer.endElement(); // itext
+        System.setProperty( "itext.basedir", 
bookFile.getParentFile().getAbsolutePath() );
 
         try
         {
-            fileWriter.close();
+            for ( Iterator it = book.getChapters().iterator(); it.hasNext(); )
+            {
+                Chapter chapter = (Chapter) it.next();
+
+                renderChapter( writer, chapter, context );
+            }
+
+            writer.endElement(); // itext
         }
-        catch ( IOException e )
+        finally
         {
-            throw new BookDoxiaException( "Error while closing file.", e );
+            IOUtil.close( fileWriter );
+            System.getProperties().remove( "itext.basedir" );
         }
 
         // 
----------------------------------------------------------------------


Reply via email to