protegido
scheduleJob vago (aJob final de SchedulerJob)
{
// cria um contexto do trabalho (Quartzo-Objeto).
jobDataMap final de JobDataMap = JobDataMap novo ();
jobDataMap.put (“dados”, aJob);
jobDataMap.put (“mola-contexto”, ctx);
jobDataMap.put (“trabalho-executer-serviço”, jobEcecuterService);
// cria um detalhe da execução de trabalho (Quartzo-Objeto).
jobDetail final de JobDetail = JobDetail novo (aJob.getId (),
zero, DefaultSchedulerExecuter.class);
jobDetail.setJobDataMap (jobDataMap);
// adiciona a JOD-definição ao planificador.
tentativa {
schedulerFactory.addJob (o jobDetail, retifica);
// cria um disparador de quartzo para começar o trabalho.
disparador final de CronTrigger = CronTrigger novo ();
// ajustou o nome à identificação
trigger.setName (aJob.getId ());
trigger.setJobName (aJob.getId ());
Começo de // agora.
trigger.setStartTime (Calendar.getInstance () .getTime ());
Programação de // como especific na expressão do cron.
trigger.setCronExpression (aJob.getCronExpression ());
se (log.isInfoEnabled ()) {
log.info (“[PLANIFICADOR] - trabalho do Scheduling: ” +
aJob.getId () + “com executer” +
jobDetail.getJobClass () .getCanonicalName ());
}
Programação de // o trabalho novo.
schedulerFactory.scheduleJob (disparador);
} prendedor (exceção final e) {
se (log.isDebugEnabled ()) {
log.info (do “trabalho do Scheduling erro” + aJob.getName () + “. Trabalho desativado. ”, e);
}
// desativa o trabalho, assim que não é começado automaticamente outra vez.
aJob.setEnabled (falso);
// conserva o trabalho modificado.
tentativa {
updateJob (aJob);
} prendedor (exceção final ex) {
lance RuntimeException novo (ex);
}
}
}
protegido
unscheduleJob vago (aJobId final da corda)
{
tentativa {
se (schedulerFactory.getJobDetail (
aJobId, “DEFEITO”)! = zero) {
se (log.isInfoEnabled ()) {
log.info (“[PLANIFICADOR] - trabalho de Unscheduling: ” +
aJobId);
}
schedulerFactory.deleteJob (aJobId, “DEFEITO”);
}
} prendedor (SchedulerException final e) {
lance RuntimeException novo (
Do “trabalho unscheduling erro com identificação” + aJobId, e);
}
}
|