Author: brett
Date: Tue Mar 2 13:57:10 2010
New Revision: 918040
URL: http://svn.apache.org/viewvc?rev=918040&view=rev
Log:
[MRM-589] make it easier to test alternate excludes
Modified:
archiva/sandbox/archiva-scanner-performance/src/main/java/org/apache/archiva/App.java
Modified:
archiva/sandbox/archiva-scanner-performance/src/main/java/org/apache/archiva/App.java
URL:
http://svn.apache.org/viewvc/archiva/sandbox/archiva-scanner-performance/src/main/java/org/apache/archiva/App.java?rev=918040&r1=918039&r2=918040&view=diff
==============================================================================
---
archiva/sandbox/archiva-scanner-performance/src/main/java/org/apache/archiva/App.java
(original)
+++
archiva/sandbox/archiva-scanner-performance/src/main/java/org/apache/archiva/App.java
Tue Mar 2 13:57:10 2010
@@ -27,8 +27,6 @@
*/
public class App
{
- private static final List<String> EXCLUDES = Arrays.asList(
RepositoryScanner.IGNORABLE_CONTENT );
-
private static final Runtime RUNTIME = Runtime.getRuntime();
public static void main( String[] args )
@@ -37,37 +35,44 @@
File basedir = args.length > 0 ? new File( args[0] ) : new File(
System.getProperty( "user.home" ),
".m2/repository" );
+ String[] excludes = RepositoryScanner.IGNORABLE_CONTENT;
+
gc();
Thread.sleep( 3000 ); // help get accurate retained size
// note first call has a disadvantage due to disk caching
System.out.println( "ant scanner" );
- scanUsingAntScanner( basedir );
+ scanUsingAntScanner( basedir, excludes );
+
System.out.println( "plexus-utils walker" );
- scanUsingUtilsWalker( basedir );
+ scanUsingUtilsWalker( basedir, Arrays.asList( excludes ) );
+
System.out.println( "new walker" );
- scanUsingNewWalker( basedir );
+ scanUsingNewWalker( basedir, Arrays.asList( excludes ) );
+
System.out.println( "commons-io walker" );
- scanUsingCommonsWalker( basedir );
+ scanUsingCommonsWalker( basedir, Arrays.asList( excludes ) );
+
System.out.println( "Current repository scanner" );
- scanUsingRepositoryScanner( basedir );
+ scanUsingRepositoryScanner( basedir, Arrays.asList( excludes ) );
+
System.out.println( "plexus-utils scanner" );
- scanUsingUtilsScanner( basedir );
+ scanUsingUtilsScanner( basedir, excludes );
}
- private static void scanUsingCommonsWalker( File basedir )
+ private static void scanUsingCommonsWalker( File basedir, List<String>
excludes )
throws IOException, InterruptedException
{
long startMemory = getUsedMemory();
long start = System.currentTimeMillis();
- MyDirectoryWalker walker = new MyDirectoryWalker( basedir, EXCLUDES );
+ MyDirectoryWalker walker = new MyDirectoryWalker( basedir, excludes );
walker.scan();
printTime( start );
showFreeMemory( startMemory );
System.out.println( "Files: " + walker.getCount() );
}
- private static void scanUsingAntScanner( File basedir )
+ private static void scanUsingAntScanner( File basedir, String[] excludes )
throws InterruptedException
{
long startMemory = getUsedMemory();
@@ -76,14 +81,14 @@
DirectoryScanner scanner = new DirectoryScanner();
scanner.setBasedir( basedir );
scanner.setIncludes( new String[]{"**/*"} );
- scanner.setExcludes( EXCLUDES.toArray( new String[EXCLUDES.size()] ) );
+ scanner.setExcludes( excludes );
scanner.scan();
printTime( start );
showFreeMemory( startMemory );
System.out.println( "Files: " + scanner.getIncludedFiles().length );
}
- private static void scanUsingUtilsScanner( File basedir )
+ private static void scanUsingUtilsScanner( File basedir, String[] excludes
)
throws InterruptedException
{
long startMemory = getUsedMemory();
@@ -92,21 +97,21 @@
org.codehaus.plexus.util.DirectoryScanner scanner = new
org.codehaus.plexus.util.DirectoryScanner();
scanner.setBasedir( basedir );
scanner.setIncludes( new String[]{"**/*"} );
- scanner.setExcludes( EXCLUDES.toArray( new String[EXCLUDES.size()] ) );
+ scanner.setExcludes( excludes );
scanner.scan();
printTime( start );
showFreeMemory( startMemory );
System.out.println( "Files: " + scanner.getIncludedFiles().length );
}
- private static void scanUsingUtilsWalker( File basedir )
+ private static void scanUsingUtilsWalker( File basedir, List excludes )
throws InterruptedException
{
long startMemory = getUsedMemory();
long start = System.currentTimeMillis();
org.codehaus.plexus.util.DirectoryWalker walker = new
org.codehaus.plexus.util.DirectoryWalker();
walker.setBaseDir( basedir );
- walker.setExcludes( EXCLUDES );
+ walker.setExcludes( excludes );
PlexusUtilsDirectoryWalkListener walkListener = new
PlexusUtilsDirectoryWalkListener();
walker.addDirectoryWalkListener( walkListener );
walker.scan();
@@ -115,14 +120,14 @@
System.out.println( "Files: " + walkListener.getCount() );
}
- private static void scanUsingNewWalker( File basedir )
+ private static void scanUsingNewWalker( File basedir, List<String>
excludes )
throws InterruptedException
{
long startMemory = getUsedMemory();
long start = System.currentTimeMillis();
DirectoryWalker walker = new DirectoryWalker();
walker.setBaseDir( basedir );
- walker.setExcludes( EXCLUDES );
+ walker.setExcludes( excludes );
MyDirectoryWalkListener walkListener = new MyDirectoryWalkListener();
walker.addDirectoryWalkListener( walkListener );
walker.scan();
@@ -131,7 +136,7 @@
System.out.println( "Files: " + walkListener.getCount() );
}
- private static void scanUsingRepositoryScanner( File basedir )
+ private static void scanUsingRepositoryScanner( File basedir, List<String>
excludes )
throws RepositoryScannerException, InterruptedException
{
long startMemory = getUsedMemory();
@@ -142,7 +147,7 @@
RepositoryScanner scanner = new DefaultRepositoryScanner();
RepositoryScanStatistics stats = scanner.scan( config,
Collections.<KnownRepositoryContentConsumer>emptyList(),
Collections.<InvalidRepositoryContentConsumer>emptyList(),
- EXCLUDES,
RepositoryScanner.FRESH_SCAN );
+ excludes,
RepositoryScanner.FRESH_SCAN );
printTime( start );
showFreeMemory( startMemory );