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 lt...@apache.org on 2007/10/09 21:52:26 UTC
svn commit: r583277 -
/maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/io/DefaultBookIo.java
Author: ltheussl
Date: Tue Oct 9 12:52:25 2007
New Revision: 583277
URL: http://svn.apache.org/viewvc?rev=583277&view=rev
Log:
DOXIA-157: generalize determination of parser Ids, files with .xml extension, eg xdocs, were always parsed by the docbook parser.
Modified:
maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/io/DefaultBookIo.java
Modified: maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/io/DefaultBookIo.java
URL: http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/io/DefaultBookIo.java?rev=583277&r1=583276&r2=583277&view=diff
==============================================================================
--- maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/io/DefaultBookIo.java (original)
+++ maven/doxia/doxia/trunk/doxia-book/src/main/java/org/apache/maven/doxia/book/services/io/DefaultBookIo.java Tue Oct 9 12:52:25 2007
@@ -89,19 +89,36 @@
String extension = siteModule.getExtension();
+ String sourceDirectory = File.separator + siteModule.getSourceDirectory() + File.separator;
+
+ String parserId = siteModule.getParserId();
+
for ( Iterator j = files.iterator(); j.hasNext(); )
{
File file = (File) j.next();
String name = file.getName();
- if ( name.endsWith( extension ) )
+ String path = file.getAbsolutePath();
+
+ // first check if the file path contains one of the recognized source dir identifiers
+ // (there's trouble if a pathname contains 2 identifiers), then match file extensions (not unique).
+
+ if ( path.indexOf( sourceDirectory ) != -1 )
{
- name = name.substring( 0, name.length() - siteModule.getExtension().length() - 1 );
+ name = name.substring( 0, name.length() - extension.length() - 1 );
- BookContext.BookFile bookFile = new BookContext.BookFile( file, siteModule.getParserId() );
+ context.getFiles().put( name, new BookContext.BookFile( file, parserId ) );
+ }
+ else if ( name.endsWith( extension ) )
+ {
+ name = name.substring( 0, name.length() - extension.length() - 1 );
- context.getFiles().put( name, bookFile );
+ // don't overwrite if it's there already
+ if ( !context.getFiles().containsKey( name ) )
+ {
+ context.getFiles().put( name, new BookContext.BookFile( file, parserId ) );
+ }
}
}
}