You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by vs...@apache.org on 2009/05/31 16:06:22 UTC
svn commit: r780427 - in /maven/plugins/trunk/maven-pdf-plugin/src:
main/java/org/apache/maven/plugins/pdf/PdfMojo.java
test/resources/unit/pdf/iText_pom.xml test/resources/unit/pdf/pom.xml
test/resources/unit/pdf/pom_filtering.xml
Author: vsiveton
Date: Sun May 31 14:06:21 2009
New Revision: 780427
URL: http://svn.apache.org/viewvc?rev=780427&view=rev
Log:
MPDF-14: Outputdirectory contains always working files
o add new param to distinct working and output dirs
o update tests
Modified:
maven/plugins/trunk/maven-pdf-plugin/src/main/java/org/apache/maven/plugins/pdf/PdfMojo.java
maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/iText_pom.xml
maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom.xml
maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom_filtering.xml
Modified: maven/plugins/trunk/maven-pdf-plugin/src/main/java/org/apache/maven/plugins/pdf/PdfMojo.java
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-pdf-plugin/src/main/java/org/apache/maven/plugins/pdf/PdfMojo.java?rev=780427&r1=780426&r2=780427&view=diff
==============================================================================
--- maven/plugins/trunk/maven-pdf-plugin/src/main/java/org/apache/maven/plugins/pdf/PdfMojo.java (original)
+++ maven/plugins/trunk/maven-pdf-plugin/src/main/java/org/apache/maven/plugins/pdf/PdfMojo.java Sun May 31 14:06:21 2009
@@ -160,14 +160,22 @@
private File siteDirectory;
/**
- * Directory containing the generated project sites and report distributions.
+ * Output directory where PDF files should be created.
*
- * @parameter alias="workingDirectory" expression="${project.build.directory}/pdf"
+ * @parameter expression="${project.build.directory}/pdf"
* @required
*/
private File outputDirectory;
/**
+ * Working directory for working files like temp files/resources.
+ *
+ * @parameter expression="${project.build.directory}/pdf"
+ * @required
+ */
+ private File workingDirectory;
+
+ /**
* File that contains the DocumentModel of the PDF to generate.
*
* @parameter expression="src/site/pdf.xml"
@@ -238,7 +246,7 @@
{
Locale locale = (Locale) iterator.next();
- File outputDir = getOutputDirectory( locale, defaultLocale );
+ File workingDir = getWorkingDirectory( locale, defaultLocale );
File siteDirectoryFile = siteDirectory;
if ( !locale.getLanguage().equals( defaultLocale.getLanguage() ) )
@@ -249,7 +257,19 @@
// Copy extra-resources
copyResources( locale );
- docRenderer.render( siteDirectoryFile, outputDir, getDocumentModel() );
+ docRenderer.render( siteDirectoryFile, workingDir, getDocumentModel() );
+ }
+
+ if ( !outputDirectory.getCanonicalPath().equals( workingDirectory.getCanonicalPath() ) )
+ {
+ List pdfs = FileUtils.getFiles( workingDirectory, "**/*.pdf", null );
+ for ( Iterator it = pdfs.iterator(); it.hasNext(); )
+ {
+ File pdf = (File) it.next();
+
+ FileUtils.copyFile( pdf, new File( outputDirectory, pdf.getName() ) );
+ pdf.delete();
+ }
}
}
catch ( DocumentRendererException e )
@@ -288,21 +308,20 @@
}
/**
- * Return the output directory for a given Locale and the current default Locale.
+ * Return the working directory for a given Locale and the current default Locale.
*
* @param locale a Locale.
* @param defaultLocale the current default Locale.
* @return File.
- * @todo can be re-used
*/
- private File getOutputDirectory( Locale locale, Locale defaultLocale )
+ private File getWorkingDirectory( Locale locale, Locale defaultLocale )
{
if ( locale.getLanguage().equals( defaultLocale.getLanguage() ) )
{
- return outputDirectory;
+ return workingDirectory;
}
- return new File( outputDirectory, locale.getLanguage() );
+ return new File( workingDirectory, locale.getLanguage() );
}
/**
@@ -530,7 +549,7 @@
{
File siteDirectoryFile = (File) i.next();
- siteRenderer.copyResources( context, new File( siteDirectoryFile, "resources" ), outputDirectory );
+ siteRenderer.copyResources( context, new File( siteDirectoryFile, "resources" ), workingDirectory );
}
}
catch ( IOException e )
Modified: maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/iText_pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/iText_pom.xml?rev=780427&r1=780426&r2=780427&view=diff
==============================================================================
--- maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/iText_pom.xml (original)
+++ maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/iText_pom.xml Sun May 31 14:06:21 2009
@@ -32,6 +32,7 @@
<docDescriptor>${basedir}/target/test-classes/unit/pdf/src/site/pdf.xml</docDescriptor>
<siteDirectory>${basedir}/target/test-classes/unit/pdf/src/site/</siteDirectory>
<outputDirectory>${basedir}/target/test-output/pdf</outputDirectory>
+ <workingDirectory>${basedir}/target/test-output/pdf</workingDirectory>
<implementation>itext</implementation>
</configuration>
</plugin>
Modified: maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom.xml?rev=780427&r1=780426&r2=780427&view=diff
==============================================================================
--- maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom.xml (original)
+++ maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom.xml Sun May 31 14:06:21 2009
@@ -32,6 +32,7 @@
<docDescriptor>${basedir}/target/test-classes/unit/pdf/src/site/pdf.xml</docDescriptor>
<siteDirectory>${basedir}/target/test-classes/unit/pdf/src/site/</siteDirectory>
<outputDirectory>${basedir}/target/test-output/pdf</outputDirectory>
+ <workingDirectory>${basedir}/target/test-output/pdf</workingDirectory>
<implementation>fo</implementation>
</configuration>
</plugin>
Modified: maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom_filtering.xml
URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom_filtering.xml?rev=780427&r1=780426&r2=780427&view=diff
==============================================================================
--- maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom_filtering.xml (original)
+++ maven/plugins/trunk/maven-pdf-plugin/src/test/resources/unit/pdf/pom_filtering.xml Sun May 31 14:06:21 2009
@@ -59,6 +59,7 @@
<docDescriptor>${basedir}/target/test-classes/unit/pdf/src/site/pdf_filtering.xml</docDescriptor>
<siteDirectory>${basedir}/target/test-classes/unit/pdf/src/site/</siteDirectory>
<outputDirectory>${basedir}/target/test-output/pdf</outputDirectory>
+ <workingDirectory>${basedir}/target/test-output/pdf</workingDirectory>
<implementation>fo</implementation>
</configuration>
</plugin>