I have a task which has a deadline defined as follows. The escalation and notification works fine as expected
log.info("ADDING ESCALTIONS for total of : "+domainTask.getEscalations().size());
List<Escalation> escalations = new ArrayList<Escalation>();
//Deadline
Deadline endDeadline = new Deadline();
endDeadline.setDate(domainTask.getDueDate());
endDeadline.setEscalated(false);
Escalation escalation = new Escalation();
escalation.setName("escalatedtask");
//Reassignments
List<Reassignment> reassignments = new ArrayList<Reassignment>();
List<OrganizationalEntity> reassignmentPotentialOwners = new ArrayList<OrganizationalEntity>();
//Notifications
List<Notification> notifications = new ArrayList<Notification>();
List<OrganizationalEntity> recipients = new ArrayList<OrganizationalEntity>();
com.my.User domainUser = (com.my.User) (taskAssignment.getAssigned());
reassignmentPotentialOwners.add(new User(Constants.jBPM_USER_ID_PREFIX+domainUser.getId().toString()));
recipients.add(new User(Constants.jBPM_USER_ID_PREFIX+domainUser.getId().toString()));
log.debug("Task is being RE-ASSIGNED to a USER with ID : "+Constants.jBPM_USER_ID_PREFIX+domainUser.getId().toString() +" and name: "+domainUser.getNameEn());
Reassignment reassignment = new Reassignment();
reassignment.setPotentialOwners(reassignmentPotentialOwners );
reassignments.add(reassignment);
escalation.setReassignments(reassignments);
EmailNotification emailNotification = new EmailNotification();
emailNotification.setRecipients(recipients);
//Email Header
Map<String,EmailNotificationHeader> emailHeaders = new HashMap<String, EmailNotificationHeader>();
EmailNotificationHeader emailHeader = new EmailNotificationHeader();
emailHeader.setLanguage("en-UK");
emailHeader.setFrom("my@mydomain.com");
emailHeader.setSubject("TASK ID : "+domainTask.getId()+" : "+domainTask.getTitle());
emailHeader.setBody(domainTask.getDescription()+" \n reaches its deadline. \n Now it is your responsability!");
emailHeaders.put("en-UK", emailHeader);
emailNotification.setEmailHeaders(emailHeaders);
notifications.add(emailNotification );
escalation.setNotifications(notifications);
escalations.add(escalation);
endDeadline.setEscalations(escalations );
Deadlines deadlines= new Deadlines();
List<Deadline> endDeadlines = new ArrayList<Deadline>();
endDeadlines.add(endDeadline);
deadlines.setEndDeadlines(endDeadlines);
task.setDeadlines(deadlines);
This works fine as expected and that is good. PHEW!!
Now, I would like to update in my database when this escalation is fired. Rather , I would like to be notified when such an escalation event is fired.
Is there anyway to achieve this ?
Regards,
Franklin