Community

JBPM-2537

reply from Alejandro Guizar in jBPM Development - View the full discussion

Looking for other perspectives about this issue I read the WS-HumanTask specification. The task life cycle from section 4.7 proposes a single state, Obsolete, for both manual/external skipping (4.7.5) and expiration (section 4.7.6).

 

With this model in mind I renamed the -cancel methods to -skip and merged STATE_CANCELLED and STATE_EXPIRED into STATE_OBSOLETE. TaskActivity declares "obsolete" a task that is still incomplete upon signal, by calling the skip(outcome) method. The resulting model is clean as it neither requires a new ActivityBehavior subinterface nor changes to the existing ExecutionImpl.signal methods or Signal class, with the one drawback that it does not distinguish between manual cancellation and timer expiration. It is not yet clear to me why is the distinction important though.

 

I've commited these changes and resolved JBPM-2537. Please take a look at the solution and feel free to reopen the issue if you feel some important aspect was left out.

Reply to this message by going to Community

Start a new discussion in jBPM Development at Community