Create an action handler and register it with the task-create.

Have that handler create a new timer per whatever rules/data you need (which 
could be from your database, or an context variable).

Code to create a timer: (This is from the CreateTimerAction code - around line 
72)
    Timer timer = new Timer(executionContext.getToken());
  |     timer.setName(timerName);
  |     timer.setRepeat(repeat);
  |     Duration duration = new Duration(dueDate);
  |     Date dueDate = businessCalendar.add( new Date(), duration );
  |     timer.setDueDate(dueDate);
  |     timer.setAction(timerAction);
  |     timer.setTransitionName(transitionName);
  |     timer.setGraphElement(executionContext.getEventSource());
  |     timer.setTaskInstance(executionContext.getTaskInstance());

Now, don't forget to create the cancel-timer action to end that timer if you 
finish the next task within the time limit, or else that timer will keep on 
ticking even if you finish the task.  You can find that code in 
JpdlXmlReader.java, in the readNodeTimer method (around line 479)

All this assumes there isn't a timer already configured on it.  This is 
programmatically creating a NEW timer. 

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3960400#3960400

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3960400
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to