@Override public <T> ScheduledCompletableFuture<T> schedule(SchedulerRunnable runnable, Duration... delays) { return scheduler.schedule(runnable, new PeriodicAdjuster(delays)); }
@Override public ScheduledCompletableFuture<@Nullable Void> schedule(CronJob job, Map<String, Object> config, String cronExpression) { final CronAdjuster cronAdjuster = new CronAdjuster(cronExpression); final SchedulerRunnable runnable = () -> { job.run(config); }; if (cronAdjuster.isReboot()) { return scheduler.at(runnable, Instant.ofEpochMilli(1)); } else { return scheduler.schedule(runnable, cronAdjuster); } }
@Override public <T> ScheduledCompletableFuture<T> schedule(SchedulerRunnable runnable, Duration... delays) { return scheduler.schedule(runnable, new PeriodicAdjuster(delays)); }
@Override public ScheduledCompletableFuture<@Nullable Void> schedule(CronJob job, Map<String, Object> config, String cronExpression) { final CronAdjuster cronAdjuster = new CronAdjuster(cronExpression); final SchedulerRunnable runnable = () -> { job.run(config); }; if (cronAdjuster.isReboot()) { return scheduler.at(runnable, Instant.ofEpochMilli(1)); } else { return scheduler.schedule(runnable, cronAdjuster); } }