use of org.motechproject.event.MotechEvent in project motech by motech.
the class TestEventListener method shouldDeleteJobIfItIsUiDefined.
@Test
public void shouldDeleteJobIfItIsUiDefined() throws Exception {
Map<String, Object> params = new HashMap<>();
params.put(MotechSchedulerService.JOB_ID_KEY, "job_id");
JobBasicInfo info = new JobBasicInfo(JobBasicInfo.ACTIVITY_ACTIVE, JobBasicInfo.STATUS_OK, "test_event-job_id", "default", "start-time", "nex-fire-time", "end-time", JobBasicInfo.JOBTYPE_CRON, "test-info", false);
CronSchedulableJob job = new CronSchedulableJob(new MotechEvent("test_event", params), "0 0 12 * * ?");
job.setUiDefined(true);
schedulerService.scheduleJob(job);
schedulerService.deleteJob(info);
assertNull(scheduler.getTrigger(triggerKey("test_event-job_id", "default")));
}
use of org.motechproject.event.MotechEvent in project motech by motech.
the class TestEventListener method shouldUnscheduleAllJobsWithAGivenJobIdPrefix.
@Test
public void shouldUnscheduleAllJobsWithAGivenJobIdPrefix() throws SchedulerException {
Map<String, Object> params = new HashMap<>();
params.put(MotechSchedulerService.JOB_ID_KEY, "job_id");
schedulerService.scheduleJob(new CronSchedulableJob(new MotechEvent("test_event1", params), "0 0 12 * * ?"));
schedulerService.scheduleJob(new CronSchedulableJob(new MotechEvent("test_event2", params), "0 0 13 * * ?"));
schedulerService.scheduleJob(new CronSchedulableJob(new MotechEvent("test_event3", params), "0 0 14 * * ?"));
schedulerService.unscheduleAllJobs("test_event");
assertNull(scheduler.getTrigger(triggerKey("test_event1-job_id", "default")));
assertNull(scheduler.getTrigger(triggerKey("test_event2-job_id", "default")));
assertNull(scheduler.getTrigger(triggerKey("test_event3-job_id", "default")));
}
use of org.motechproject.event.MotechEvent in project motech by motech.
the class TestEventListener method shouldThrowExceptionForNullStartTime.
@Test(expected = IllegalArgumentException.class)
public void shouldThrowExceptionForNullStartTime() throws SchedulerException {
Map<String, Object> params = new HashMap<>();
params.put(MotechSchedulerService.JOB_ID_KEY, "job_id");
schedulerService.scheduleRepeatingJob(new RepeatingSchedulableJob(new MotechEvent("test_event", params), DateTimeConstants.SECONDS_PER_DAY, null, newDateTime(2020, 7, 18, 12, 0, 0), false));
}
use of org.motechproject.event.MotechEvent in project motech by motech.
the class TestEventListener method shouldNotPauseJobIfItIsNotUiDefined.
@Test(expected = MotechSchedulerException.class)
public void shouldNotPauseJobIfItIsNotUiDefined() throws Exception {
try {
Map<String, Object> params = new HashMap<>();
params.put(MotechSchedulerService.JOB_ID_KEY, "job_id");
JobBasicInfo info = new JobBasicInfo(JobBasicInfo.ACTIVITY_ACTIVE, JobBasicInfo.STATUS_OK, "test_event-job_id", "default", "start-time", "nex-fire-time", "end-time", JobBasicInfo.JOBTYPE_CRON, "test-info", true);
schedulerService.scheduleJob(new CronSchedulableJob(new MotechEvent("test_event", params), "0 0 12 * * ?"));
assertEquals(NORMAL, scheduler.getTriggerState(triggerKey("test_event-job_id", "default")));
schedulerService.pauseJob(info);
} finally {
assertEquals(NORMAL, scheduler.getTriggerState(triggerKey("test_event-job_id", "default")));
}
}
use of org.motechproject.event.MotechEvent in project motech by motech.
the class SettingsServiceImpl method saveBundleSettings.
@Override
public void saveBundleSettings(Settings settings, long bundleId) throws IOException {
Properties props = ParamParser.constructProperties(settings);
configurationService.addOrUpdateProperties(getBundleSymbolicName(bundleId), getVersion(bundleId), settings.getSection(), props, getBundleDefaultProperties(bundleId).get(settings.getSection()));
Map<String, Object> params = new HashMap<>();
params.put(ConfigurationConstants.BUNDLE_ID, bundleId);
params.put(ConfigurationConstants.BUNDLE_SYMBOLIC_NAME, getBundleSymbolicName(bundleId));
params.put(ConfigurationConstants.BUNDLE_SECTION, settings.getSection());
MotechEvent bundleSettingsChangedEvent = new MotechEvent(ConfigurationConstants.BUNDLE_SETTINGS_CHANGED_EVENT_SUBJECT, params);
eventRelay.sendEventMessage(bundleSettingsChangedEvent);
}
Aggregations