new ArrayBlockingQueue<Runnable>( 500 ) );
try
{
// Ask to the executorService to run all tasks
RunResult globalResult = new RunResult( 0, 0, 0, 0 );
final Iterator suites = getSuitesIterator();
while ( suites.hasNext() )
{
final Object testSet = suites.next();
final ForkClient forkClient =
new ForkClient( fileReporterFactory, startupReportConfiguration.getTestVmSystemProperties() );
Callable<RunResult> pf = new Callable<RunResult>()
{
public RunResult call()
throws Exception
{
return fork( testSet, properties, forkClient, fileReporterFactory.getGlobalRunStatistics() );
}
};
results.add( executorService.submit( pf ) );
}
for ( Future<RunResult> result : results )
{
try
{
RunResult cur = result.get();
if ( cur != null )
{
globalResult = globalResult.aggregate( cur );
}
else