}
public Object execute(JbpmContext jbpmContext) throws Exception {
if (taskInstanceId > 0) {
TaskInstance taskInstance = jbpmContext
.getTaskInstance(taskInstanceId);
if (taskInstance != null) {
retrieveTaskInstanceDetails(taskInstance);
}
return taskInstance;
}
else if (tokenId > 0) {
List result = jbpmContext.getTaskMgmtSession()
.findTaskInstancesByToken(tokenId);
for (Iterator iter = result.iterator(); iter.hasNext();) {
TaskInstance ti = (TaskInstance) iter.next();
retrieveTaskInstanceDetails(ti);
}
return result;
}
else if (processInstanceId > 0) {
List result = jbpmContext.getTaskMgmtSession()
.findTaskInstancesByProcessInstance(
jbpmContext.getProcessInstance(processInstanceId));
for (Iterator iter = result.iterator(); iter.hasNext();) {
TaskInstance ti = (TaskInstance) iter.next();
retrieveTaskInstanceDetails(ti);
}
return result;
}
else