@Override protected SubmitterSchedulerLimiter getLimiter(int parallelCount, boolean limitFutureListenersExecution) { return new SubmitterSchedulerLimiter(scheduler, parallelCount, limitFutureListenersExecution); }
@Override public SubmitterScheduler makeSubmitterScheduler(int poolSize, boolean prestartIfAvailable) { SubmitterScheduler scheduler = schedulerFactory.makeSubmitterScheduler(poolSize, prestartIfAvailable); return new SubmitterSchedulerLimiter(scheduler, poolSize); } }
@Override protected SubmitterSchedulerLimiter makeLimiter(String limiterThreadName) { return new SubmitterSchedulerLimiter(StringUtils.isNullOrEmpty(limiterThreadName) ? scheduler : new ThreadRenamingSubmitterScheduler(scheduler, limiterThreadName, false), getMaxConcurrencyPerKey(), limitFutureListenersExecution); }
@Override protected SubmitterSchedulerLimiter makeLimiter(String limiterThreadName) { return new SubmitterSchedulerLimiter(StringUtils.isNullOrEmpty(limiterThreadName) ? scheduler : new ThreadRenamingSubmitterScheduler(scheduler, limiterThreadName, false), getMaxConcurrencyPerKey(), limitFutureListenersExecution); }
@Test @Override @SuppressWarnings("unused") public void constructorFail() { try { new SubmitterSchedulerLimiter(null, 100); fail("Exception should have thrown"); } catch (IllegalArgumentException e) { // expected } try { new SubmitterSchedulerLimiter(scheduler, 0); fail("Exception should have thrown"); } catch (IllegalArgumentException e) { // expected } }