Author: rfscholte
Date: Mon Apr  1 11:52:50 2013
New Revision: 1463123

URL: http://svn.apache.org/r1463123
Log:
[DOXIA-487] Speed up XdocParserTest.setup 

Modified:
    
maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocParserTest.java

Modified: 
maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocParserTest.java
URL: 
http://svn.apache.org/viewvc/maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocParserTest.java?rev=1463123&r1=1463122&r2=1463123&view=diff
==============================================================================
--- 
maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocParserTest.java
 (original)
+++ 
maven/doxia/doxia/trunk/doxia-modules/doxia-module-xdoc/src/test/java/org/apache/maven/doxia/module/xdoc/XdocParserTest.java
 Mon Apr  1 11:52:50 2013
@@ -20,12 +20,14 @@ package org.apache.maven.doxia.module.xd
  */
 
 import java.io.File;
+import java.io.FileFilter;
 import java.io.FileReader;
 import java.io.Reader;
 import java.io.Writer;
 
 import java.util.Iterator;
 import java.util.List;
+import java.util.regex.Pattern;
 
 import org.apache.maven.doxia.parser.AbstractParserTest;
 import org.apache.maven.doxia.parser.ParseException;
@@ -61,13 +63,30 @@ public class XdocParserTest
         // AbstractXmlParser.CachedFileEntityResolver downloads DTD/XSD files 
in ${java.io.tmpdir}
         // Be sure to delete them
         String tmpDir = System.getProperty( "java.io.tmpdir" );
-        String excludes = "xdoc-*.xsd, xml.xsd";
-        List<String> tmpFiles = FileUtils.getFileNames( new File( tmpDir ), 
excludes, null, true );
-        for ( Iterator<String> it = tmpFiles.iterator(); it.hasNext(); )
+
+        final Pattern xsdFilePattern = Pattern.compile( 
"(xdoc\\-.*|xml)\\.xsd" );
+
+        File[] xsdFiles = new File( tmpDir ).listFiles( new FileFilter()
+        {
+
+            public boolean accept( File pathname )
+            {
+                return pathname.isFile() && xsdFilePattern.matcher( 
pathname.getName() ).matches();
+            }
+        } );
+
+        for ( File xsdFile : xsdFiles )
         {
-            File tmpFile = new File( it.next().toString() );
-            tmpFile.delete();
+            xsdFile.delete();
         }
+
+        /* FileUtils 3.0.10 is about 5-8 times slower than File.listFiles() + 
regexp */
+//        String includes = "xdoc-*.xsd, xml.xsd";
+//        List<File> tmpFiles = FileUtils.getFiles( new File( tmpDir ), 
includes, null, true );
+//        for ( File tmpFile  : tmpFiles )
+//        {
+//            tmpFile.delete();
+//        }
     }
 
     /** {@inheritDoc} */


Reply via email to