Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- try
- {
- creditRabbitOperationManager.writeOffAmqpProcess(context.getMergedJobDataMap().getInt("punterId"));
- logger.debug("CreditWriteOffJob execute in context {}", context);
- }
- catch (Exception e)
- {
- creditConsumer.scheduleWriteOffJob(context.getMergedJobDataMap().getInt("punterId"), true);
- logger.info("Job tried to recover!");
- JobExecutionException e2 = new JobExecutionException(e);
- // fire it again
- e2.setRefireImmediately(true);
- throw e2;
- }
- private void sheduleWriteOffJob(Integer punterId, boolean isChangeEventFinishTime)
- {
- try
- {
- String triggerName = "writeoff_credit-" + punterId;
- if (punterId != null && !schedulerFactory.getScheduler().checkExists(new TriggerKey(triggerName)))
- {
- SimpleTrigger trigger;
- if (isChangeEventFinishTime)
- {
- // добавляем задержку 5 сек для джоб с изменением фиништайма
- trigger = triggerFactory.getObject().getTriggerBuilder().usingJobData("punterId", punterId)
- .withIdentity(triggerName).startAt(new Date(System.currentTimeMillis() + 5000)).build();
- }
- else
- {
- // для всех остальных.
- trigger = triggerFactory.getObject().getTriggerBuilder().usingJobData("punterId", punterId)
- .withIdentity(triggerName).build();
- }
- schedulerFactory.getScheduler().scheduleJob(trigger);
- }
- }
- catch (ObjectAlreadyExistsException e)
- {
- logger.error("Error writeoff job schedule for punter {}, job allready exist", punterId);
- }
- catch (SchedulerException e)
- {
- logger.error("Error writeoff job schedule for punter {}", punterId, e);
- throw new RuntimeException(e);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement