in spring-taskqueue/src/main/java/org/apache/archiva/components/taskqueue/DefaultTaskQueue.java [110:141]
public Task take( )
throws TaskQueueException
{
logger.debug( "take" );
while ( true )
{
Task task = dequeue( );
if ( task == null )
{
return null;
}
for ( TaskExitEvaluator taskExitEvaluator : taskExitEvaluators )
{
boolean result = taskExitEvaluator.evaluate( task );
if ( !result )
{
// the task wasn't accepted; drop it.
task = null;
break;
}
}
if ( task != null )
{
return task;
}
}
}