@SuppressWarnings("NullableProblems") // Guava should not have stuck @Nullable on this... @Override public JobRunnerKey apply(String jobName) { return JobRunnerKey.of(jobName); } });
@Nonnull @Override protected JobRunnerKey getJobRunnerKey(Trigger trigger) { return JobRunnerKey.of(trigger.getJobName()); }
@Nonnull @Override public Set<JobRunnerKey> findAllJobRunnerKeys() { final ImmutableSet.Builder<JobRunnerKey> keys = ImmutableSet.builder(); Select.distinctString(JOB_RUNNER_KEY) .from(Name.CLUSTERED_JOB) .runWith(entityEngine) .visitWith(jobRunnerKey -> keys.add(JobRunnerKey.of(jobRunnerKey))); return keys.build(); }
public DefaultSubscriptionManager(final MailQueue mailQueue, final TemplateManager templateManager, final SubscriptionMailQueueItemFactory subscriptionMailQueueItemFactory, final ProjectRoleManager projectRoleManager, final GroupManager groupManager, SchedulerService schedulerService, final EntityEngine entityEngine) { super(templateManager, projectRoleManager); this.mailQueue = mailQueue; this.subscriptionMailQueueItemFactory = subscriptionMailQueueItemFactory; this.groupManager = groupManager; this.schedulerService = schedulerService; this.entityEngine = entityEngine; schedulerService.registerJobRunner(JobRunnerKey.of(JOB_RUNNER_KEY), new SendFilterJob()); }
private static JobConfig getJobConfig(final Long subscriptionId, final Schedule schedule) { return JobConfig.forJobRunnerKey(JobRunnerKey.of(JOB_RUNNER_KEY)) .withSchedule(schedule) .withParameters(ImmutableMap.<String, Serializable>of(SUBSCRIPTION_IDENTIFIER, subscriptionId)); }
@Override public void destroy() { executor.shutdown(); schedulerService.unregisterJobRunner(JobRunnerKey.of(TASK_ID_HERCULES)); // Clear the scan results cache if the add-on is uninstalled clearScanResultCache(); }
boolean unscheduleJob(final JobId jobId) { final Trigger trigger = getTrigger(jobId); if (trigger == null) { return false; } final JobRunnerKey jobRunnerKey = JobRunnerKey.of(trigger.getJobName()); if (deleteTrigger(jobId) && !hasAnyTriggers(jobRunnerKey)) { deleteJob(jobRunnerKey); } return true; }
final JobRunnerKey jobRunnerKey = JobRunnerKey.of(String.format("%s.%s", JIRA_CRON_SCHEDULER_JOB_RUNNER, jobKey)); unscheduleJob(jobKey); scheduler.unregisterJobRunner(jobRunnerKey);
private static final String REINDEX_ALLOWED_PROPERTY="upgrade.reindex.allowed"; public static final JobRunnerKey JOB_RUNNER_KEY = JobRunnerKey.of(DelayedUpgradeJobRunner.class.getName()); public static final JobId JOB_ID = JobId.of(DelayedUpgradeJobRunner.class.getName());
final JobRunnerKey jobRunnerKey = JobRunnerKey.of(runnerKey);
private void createClusteredJob(final GenericValue trigger, final String jobId, final Date nextRunTime, final Schedule schedule) { final ClusteredJob clusteredJob = ImmutableClusteredJob.builder() .jobId(JobId.of(jobId)) .jobRunnerKey(JobRunnerKey.of(trigger.getString(JOB_NAME))) .nextRunTime(nextRunTime) .schedule(schedule) .parameters((byte[])trigger.get(JOB_DATA)) .build(); createClusteredJob(clusteredJob); }
@Override public OfBizClusteredJob build(final GenericValue genericValue) { return new OfBizClusteredJob(genericValue.getLong(ID), ImmutableClusteredJob.builder() .jobId(JobId.of(genericValue.getString(JOB_ID))) .jobRunnerKey(JobRunnerKey.of(genericValue.getString(JOB_RUNNER_KEY))) .schedule(getSchedule(genericValue)) .nextRunTime(toDate(genericValue.getLong(NEXT_RUN))) .version(genericValue.getLong(VERSION)) .parameters((byte[])genericValue.get(PARAMETERS)) .build() ); }
private void createFilterSubscriptionSchedule(final Long id, final Schedule schedule) throws SchedulerServiceException { final JobId jobId = toJobId(id); final Date nextRunTime = schedulerService.calculateNextRunTime(schedule); final ClusteredJob clusteredJob = ImmutableClusteredJob.builder() .jobId(jobId) .jobRunnerKey(JobRunnerKey.of(JOB_RUNNER_KEY)) .nextRunTime(nextRunTime) .schedule(schedule) .parameters(toRawParameters(id)) .build(); Delete.from(Entity.CLUSTERED_JOB) .whereEqual(ClusteredJobFactory.JOB_ID, jobId.toString()) .execute(entityEngine); entityEngine.createValue(Entity.CLUSTERED_JOB, new OfBizClusteredJob(null, clusteredJob)); }