Class SchedulingStrategies


  • public class SchedulingStrategies
    extends Object
    The factory of SchedulingStrategy.
    Since:
    2.16
    Author:
    Tibor Digana (tibor17)
    • Constructor Detail

      • SchedulingStrategies

        public SchedulingStrategies()
    • Method Detail

      • createInvokerStrategy

        public static SchedulingStrategy createInvokerStrategy​(org.apache.maven.plugin.surefire.log.api.ConsoleLogger logger)
        Parameters:
        logger - current error logger
        Returns:
        sequentially executing strategy
      • createParallelStrategy

        public static SchedulingStrategy createParallelStrategy​(org.apache.maven.plugin.surefire.log.api.ConsoleLogger logger,
                                                                int nThreads)
        Parameters:
        logger - current error logger
        nThreads - fixed pool capacity
        Returns:
        parallel scheduling strategy
      • createParallelStrategyUnbounded

        public static SchedulingStrategy createParallelStrategyUnbounded​(org.apache.maven.plugin.surefire.log.api.ConsoleLogger logger)
        Parameters:
        logger - current error logger
        Returns:
        parallel scheduling strategy with unbounded capacity
      • createParallelSharedStrategy

        public static SchedulingStrategy createParallelSharedStrategy​(org.apache.maven.plugin.surefire.log.api.ConsoleLogger logger,
                                                                      ExecutorService threadPool)
        The threadPool passed to this strategy can be shared in other strategies.
        The call SchedulingStrategy.finished() is waiting until own tasks have finished. New tasks will not be scheduled by this call in this strategy. This strategy is not waiting for other strategies to finish. The RunnerScheduler.finished() may freely use SchedulingStrategy.finished().
        Parameters:
        logger - current error logger
        threadPool - thread pool possibly shared with other strategies
        Returns:
        parallel strategy with shared thread pool
        Throws:
        NullPointerException - if threadPool is null