Search in sources :

Example 1 with DefaultJobIdentifier

use of com.thinkbiganalytics.scheduler.model.DefaultJobIdentifier in project kylo by Teradata.

the class NifiStatsJmsReceiver method scheduleStatsCompaction.

/**
 * Schedule the compaction job in Quartz if the properties have this enabled with a Cron Expression
 */
private void scheduleStatsCompaction() {
    if (compactStatsEnabled && StringUtils.isNotBlank(compactStatsCronSchedule)) {
        QuartzScheduler scheduler = (QuartzScheduler) jobScheduler;
        JobIdentifier jobIdentifier = new DefaultJobIdentifier("Compact NiFi Processor Stats", "KYLO");
        TriggerIdentifier triggerIdentifier = new DefaultTriggerIdentifier(jobIdentifier.getName(), jobIdentifier.getGroup());
        try {
            scheduler.scheduleJob(jobIdentifier, triggerIdentifier, NiFiStatsCompactionQuartzJobBean.class, compactStatsCronSchedule, null);
        } catch (ObjectAlreadyExistsException e) {
            log.info("Unable to schedule the job to compact the NiFi processor stats.  It already exists.  Most likely another Kylo node has already schceduled this job. ");
        } catch (SchedulerException e) {
            throw new RuntimeException("Error scheduling job: Compact NiFi Processor Stats", e);
        }
    }
}
Also used : SchedulerException(org.quartz.SchedulerException) DefaultTriggerIdentifier(com.thinkbiganalytics.scheduler.model.DefaultTriggerIdentifier) QuartzScheduler(com.thinkbiganalytics.scheduler.QuartzScheduler) DefaultJobIdentifier(com.thinkbiganalytics.scheduler.model.DefaultJobIdentifier) JobIdentifier(com.thinkbiganalytics.scheduler.JobIdentifier) DefaultTriggerIdentifier(com.thinkbiganalytics.scheduler.model.DefaultTriggerIdentifier) TriggerIdentifier(com.thinkbiganalytics.scheduler.TriggerIdentifier) ObjectAlreadyExistsException(org.quartz.ObjectAlreadyExistsException) DefaultJobIdentifier(com.thinkbiganalytics.scheduler.model.DefaultJobIdentifier)

Example 2 with DefaultJobIdentifier

use of com.thinkbiganalytics.scheduler.model.DefaultJobIdentifier in project kylo by Teradata.

the class SchedulerObjectSerializatoinTest method testTriggerInfoSerialization.

@Test
public void testTriggerInfoSerialization() {
    try {
        TriggerInfo info = new DefaultTriggerInfo(new DefaultJobIdentifier(), new DefaultTriggerIdentifier());
        ObjectMapper objectMapper = new ObjectMapper();
        String json = null;
        json = objectMapper.writeValueAsString(info);
        System.out.println(json);
        TriggerInfo info2 = objectMapper.readValue(json, TriggerInfo.class);
        System.out.println(info2);
    } catch (JsonProcessingException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
}
Also used : DefaultTriggerInfo(com.thinkbiganalytics.scheduler.model.DefaultTriggerInfo) DefaultTriggerIdentifier(com.thinkbiganalytics.scheduler.model.DefaultTriggerIdentifier) DefaultTriggerInfo(com.thinkbiganalytics.scheduler.model.DefaultTriggerInfo) IOException(java.io.IOException) JsonProcessingException(com.fasterxml.jackson.core.JsonProcessingException) ObjectMapper(com.fasterxml.jackson.databind.ObjectMapper) DefaultJobIdentifier(com.thinkbiganalytics.scheduler.model.DefaultJobIdentifier) Test(org.junit.Test)

Aggregations

DefaultJobIdentifier (com.thinkbiganalytics.scheduler.model.DefaultJobIdentifier)2 DefaultTriggerIdentifier (com.thinkbiganalytics.scheduler.model.DefaultTriggerIdentifier)2 JsonProcessingException (com.fasterxml.jackson.core.JsonProcessingException)1 ObjectMapper (com.fasterxml.jackson.databind.ObjectMapper)1 JobIdentifier (com.thinkbiganalytics.scheduler.JobIdentifier)1 QuartzScheduler (com.thinkbiganalytics.scheduler.QuartzScheduler)1 TriggerIdentifier (com.thinkbiganalytics.scheduler.TriggerIdentifier)1 DefaultTriggerInfo (com.thinkbiganalytics.scheduler.model.DefaultTriggerInfo)1 IOException (java.io.IOException)1 Test (org.junit.Test)1 ObjectAlreadyExistsException (org.quartz.ObjectAlreadyExistsException)1 SchedulerException (org.quartz.SchedulerException)1