@Override public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) { return group.schedule(command, delay, unit); }
@Override public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit) { return group.schedule(callable, delay, unit); }
@Override public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) { return group.schedule(command, delay, unit); }
@Override public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit) { return group.schedule(callable, delay, unit); }
@Override public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit) { return group.schedule(callable, delay, unit); }
@Override public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) { return group.schedule(command, delay, unit); }
void processMessage(String channel, String message, Supplier<Runnable> runnableSupplier) { if (!processingAllowed(channel, message)) { return; } timedSemaphore.onEvent(timeout -> { Runnable runnable = runnableSupplier.get(); if (timeout == null) { eventExecutors.submit(runnable); } else { eventExecutors.schedule(runnable, timeout.remaining(), TimeUnit.MILLISECONDS); } }); }
@Override public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit) { return group.schedule(callable, delay, unit); }
@Override public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) { return group.schedule(command, delay, unit); }
@Override public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit) { return group.schedule(callable, delay, unit); }
@Override public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) { return group.schedule(command, delay, unit); }
@Override public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) { return group.schedule(command, delay, unit); }
@Override public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit) { return group.schedule(callable, delay, unit); }
@Override public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit) { return group.schedule(callable, delay, unit); }
@Override public <V> ScheduledFuture<V> schedule(Callable<V> callable, long delay, TimeUnit unit) { return group.schedule(callable, delay, unit); }
@Override public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) { return group.schedule(command, delay, unit); }
@Override public ScheduledFuture<?> schedule(Runnable command, long delay, TimeUnit unit) { return group.schedule(command, delay, unit); }
void processMessage(String channel, String message, Supplier<Runnable> runnableSupplier) { if (!processingAllowed(channel, message)) { return; } timedSemaphore.onEvent(timeout -> { Runnable runnable = runnableSupplier.get(); if (timeout == null) { eventExecutors.submit(runnable); } else { eventExecutors.schedule(runnable, timeout.remaining(), TimeUnit.MILLISECONDS); } }); }