@Override public void cancelSchedule(String deadlineName, String scheduleId) { runOnPrepareCommitOrNow(() -> cancelSchedule(jobKey(scheduleId, deadlineName))); }
@Override public void cancelAll(String deadlineName) { runOnPrepareCommitOrNow(() -> { try { scheduler.getJobKeys(GroupMatcher.groupEquals(deadlineName)) .forEach(this::cancelSchedule); } catch (SchedulerException e) { throw new DeadlineException("An error occurred while cancelling a timer for a deadline manager", e); } }); }
@Override public String schedule(Instant triggerDateTime, String deadlineName, Object messageOrPayload, ScopeDescriptor deadlineScope) { DeadlineMessage<Object> deadlineMessage = asDeadlineMessage(deadlineName, messageOrPayload); String deadlineId = JOB_NAME_PREFIX + deadlineMessage.getIdentifier(); runOnPrepareCommitOrNow(() -> { DeadlineMessage interceptedDeadlineMessage = processDispatchInterceptors(deadlineMessage); try { JobDetail jobDetail = buildJobDetail(interceptedDeadlineMessage, deadlineScope, new JobKey(deadlineId, deadlineName)); scheduler.scheduleJob(jobDetail, buildTrigger(triggerDateTime, jobDetail.getKey())); } catch (SchedulerException e) { throw new DeadlineException("An error occurred while setting a timer for a deadline", e); } }); return deadlineId; }
@Override public void cancelSchedule(String deadlineName, String scheduleId) { runOnPrepareCommitOrNow(() -> cancelSchedule(jobKey(scheduleId, deadlineName))); }
@Override public void cancelSchedule(String deadlineName, String scheduleId) { runOnPrepareCommitOrNow(() -> cancelSchedule(jobKey(scheduleId, deadlineName))); }
@Override public void cancelAll(String deadlineName) { runOnPrepareCommitOrNow(() -> { try { scheduler.getJobKeys(GroupMatcher.groupEquals(deadlineName)) .forEach(this::cancelSchedule); } catch (SchedulerException e) { throw new DeadlineException("An error occurred while cancelling a timer for a deadline manager", e); } }); }
@Override public void cancelAll(String deadlineName) { runOnPrepareCommitOrNow(() -> { try { scheduler.getJobKeys(GroupMatcher.groupEquals(deadlineName)) .forEach(this::cancelSchedule); } catch (SchedulerException e) { throw new DeadlineException("An error occurred while cancelling a timer for a deadline manager", e); } }); }
@Override public void schedule(Instant triggerDateTime, String deadlineName, Object messageOrPayload, ScopeDescriptor deadlineScope, String scheduleId) { runOnPrepareCommitOrNow(() -> { DeadlineMessage deadlineMessage = asDeadlineMessage(deadlineName, messageOrPayload); try { JobDetail jobDetail = buildJobDetail(deadlineMessage, deadlineScope, new JobKey(scheduleId, deadlineName)); scheduler.scheduleJob(jobDetail, buildTrigger(triggerDateTime, jobDetail.getKey()), true); } catch (SchedulerException e) { throw new DeadlineException("An error occurred while setting a timer for a deadline", e); } }); }
@Override public String schedule(Instant triggerDateTime, String deadlineName, Object messageOrPayload, ScopeDescriptor deadlineScope) { DeadlineMessage<Object> deadlineMessage = asDeadlineMessage(deadlineName, messageOrPayload); String deadlineId = JOB_NAME_PREFIX + deadlineMessage.getIdentifier(); runOnPrepareCommitOrNow(() -> { DeadlineMessage interceptedDeadlineMessage = processDispatchInterceptors(deadlineMessage); try { JobDetail jobDetail = buildJobDetail(interceptedDeadlineMessage, deadlineScope, new JobKey(deadlineId, deadlineName)); scheduler.scheduleJob(jobDetail, buildTrigger(triggerDateTime, jobDetail.getKey())); } catch (SchedulerException e) { throw new DeadlineException("An error occurred while setting a timer for a deadline", e); } }); return deadlineId; }