Author: vsiveton
Date: Thu May 7 13:21:00 2009
New Revision: 772644
URL: http://svn.apache.org/viewvc?rev=772644&view=rev
Log:
DOXIASITETOOLS-22: Unable to renderer files with uppercase extension
o take care of the extension case
Modified:
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/render/RenderingContext.java
Modified:
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
URL:
http://svn.apache.org/viewvc/maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java?rev=772644&r1=772643&r2=772644&view=diff
==============================================================================
---
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
(original)
+++
maven/doxia/doxia-sitetools/trunk/doxia-site-renderer/src/main/java/org/apache/maven/doxia/siterenderer/DefaultSiteRenderer.java
Thu May 7 13:21:00 2009
@@ -46,6 +46,7 @@
import java.util.Enumeration;
import java.util.Iterator;
import java.util.LinkedHashMap;
+import java.util.LinkedList;
import java.util.List;
import java.util.Locale;
import java.util.Map;
@@ -208,23 +209,43 @@
{
if ( moduleBasedir.exists() )
{
- List docs = new ArrayList();
+ List allFiles = FileUtils.getFileNames( moduleBasedir, "**/*.*",
excludes, false );
- docs.addAll( FileUtils.getFileNames( moduleBasedir, "**/*." +
module.getExtension(), excludes, false ) );
+ String lowerCaseExtension = module.getExtension().toLowerCase(
Locale.ENGLISH );
+ List docs = new LinkedList( allFiles );
+ // Take care of extension case
+ for ( Iterator it = docs.iterator(); it.hasNext(); )
+ {
+ String name = it.next().toString().trim();
+
+ if ( !name.toLowerCase( Locale.ENGLISH ).endsWith( "." +
lowerCaseExtension ) )
+ {
+ it.remove();
+ }
+ }
- // download.apt.vm
- docs.addAll( FileUtils.getFileNames( moduleBasedir,
- "**/*." + module.getExtension() + ".vm", excludes, false )
);
+ List velocityFiles = new LinkedList( allFiles );
+ // *.xml.vm
+ for ( Iterator it = velocityFiles.iterator(); it.hasNext(); )
+ {
+ String name = it.next().toString().trim();
+
+ if ( !name.toLowerCase( Locale.ENGLISH ).endsWith(
lowerCaseExtension + ".vm" ) )
+ {
+ it.remove();
+ }
+ }
+ docs.addAll( velocityFiles );
for ( Iterator k = docs.iterator(); k.hasNext(); )
{
- String doc = (String) k.next();
+ String doc = k.next().toString().trim();
RenderingContext context =
new RenderingContext( moduleBasedir, doc,
module.getParserId(), module.getExtension() );
// TODO: DOXIA-111: we need a general filter here that knows
how to alter the context
- if ( doc.endsWith( ".vm" ) )
+ if ( doc.toLowerCase( Locale.ENGLISH ).endsWith( ".vm" ) )
{
context.setAttribute( "velocity", "true" );
}
Modified:
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/render/RenderingContext.java
URL:
http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/render/RenderingContext.java?rev=772644&r1=772643&r2=772644&view=diff
==============================================================================
---
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/render/RenderingContext.java
(original)
+++
maven/doxia/doxia/trunk/doxia-core/src/main/java/org/apache/maven/doxia/sink/render/RenderingContext.java
Thu May 7 13:21:00 2009
@@ -21,6 +21,7 @@
import java.io.File;
import java.util.HashMap;
+import java.util.Locale;
import java.util.Map;
import org.codehaus.plexus.util.PathTool;
@@ -91,7 +92,8 @@
// index.xml -> index.html
// index.xml.vm -> index.html
// download.apt.vm --> download.html
- int startIndexOfExtension = document.indexOf( "." + extension );
+ int startIndexOfExtension =
+ document.toLowerCase( Locale.ENGLISH ).indexOf( "." +
extension.toLowerCase( Locale.ENGLISH ) );
String fileNameWithoutExt = document.substring( 0,
startIndexOfExtension );
this.outputName = fileNameWithoutExt + ".html";
}