[jbpm-commits] JBoss JBPM SVN: r3335 - jbpm3/trunk/modules/core/src/main/java/org/jbpm/command.
do-not-reply at jboss.org
do-not-reply at jboss.org
Thu Dec 11 06:38:53 EST 2008
Author: camunda
Date: 2008-12-11 06:38:53 -0500 (Thu, 11 Dec 2008)
New Revision: 3335
Added:
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ResumeTokenCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SuspendTokenCommand.java
Modified:
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractProcessInstanceBaseCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ChangeProcessInstanceVersionCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ResumeProcessInstanceCommand.java
jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SuspendProcessInstanceCommand.java
Log:
JBPM-1905: added Suspend/Resume Token Command
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractProcessInstanceBaseCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractProcessInstanceBaseCommand.java 2008-12-11 11:38:23 UTC (rev 3334)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/AbstractProcessInstanceBaseCommand.java 2008-12-11 11:38:53 UTC (rev 3335)
@@ -1,5 +1,6 @@
package org.jbpm.command;
+import java.util.ArrayList;
import java.util.Arrays;
import java.util.Iterator;
import java.util.List;
@@ -48,6 +49,7 @@
public Object execute(JbpmContext jbpmContext) throws Exception
{
+ ArrayList result = new ArrayList();
this.jbpmContext = jbpmContext;
try {
log.debug("executing " + this);
@@ -58,7 +60,8 @@
for (int i = 0; i < processInstanceIds.length; i++)
{
ProcessInstance pi = jbpmContext.loadProcessInstanceForUpdate(processInstanceIds[i]);
- execute(pi);
+ result.add(
+ execute(pi));
}
}
@@ -92,14 +95,22 @@
}
}
- return null;
+ if (operateOnSingleObject) {
+ if (result.size()<1)
+ return null;
+ else
+ return result.get(0);
+ }
+ else {
+ return result;
+ }
}
finally {
this.jbpmContext = null;
}
}
- public abstract void execute(ProcessInstance processInstance);
+ public abstract ProcessInstance execute(ProcessInstance processInstance);
public AbstractProcessInstanceBaseCommand setProcessInstanceIds(long[] processInstanceIds)
{
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ChangeProcessInstanceVersionCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ChangeProcessInstanceVersionCommand.java 2008-12-11 11:38:23 UTC (rev 3334)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ChangeProcessInstanceVersionCommand.java 2008-12-11 11:38:53 UTC (rev 3335)
@@ -97,7 +97,7 @@
return getJbpmContext().getGraphSession().findProcessDefinition(processName, newVersion);
}
- public void execute(ProcessInstance pi)
+ public ProcessInstance execute(ProcessInstance pi)
{
ProcessDefinition oldDef = pi.getProcessDefinition();
ProcessDefinition newDef = loadNewProcessDefinition(oldDef.getName());
@@ -108,6 +108,7 @@
changeTokenVersion(pi.getRootToken());
log.debug("process id " + pi.getId() + " changed to version " + pi.getProcessDefinition().getVersion());
+ return pi;
}
private ProcessDefinition getNewProcessDefinition(Token t) {
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ResumeProcessInstanceCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ResumeProcessInstanceCommand.java 2008-12-11 11:38:23 UTC (rev 3334)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ResumeProcessInstanceCommand.java 2008-12-11 11:38:53 UTC (rev 3335)
@@ -10,9 +10,12 @@
*/
public class ResumeProcessInstanceCommand extends AbstractProcessInstanceBaseCommand {
+ private static final long serialVersionUID = 1L;
+
@Override
- public void execute(ProcessInstance processInstance)
+ public ProcessInstance execute(ProcessInstance processInstance)
{
- processInstance.resume();
+ processInstance.resume();
+ return processInstance;
}
}
Added: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ResumeTokenCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ResumeTokenCommand.java (rev 0)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/ResumeTokenCommand.java 2008-12-11 11:38:53 UTC (rev 3335)
@@ -0,0 +1,22 @@
+package org.jbpm.command;
+
+import org.jbpm.graph.exe.Token;
+
+/**
+ * Resume the specified {@link Token}(s). See {@link AbstractTokenBaseCommand}
+ * to check possibilities to specify {@link Token}(s).
+ *
+ * @author bernd.ruecker at camunda.com
+ */
+public class ResumeTokenCommand extends AbstractTokenBaseCommand {
+
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public Token execute(Token token)
+ {
+ token.resume();
+ return token;
+ }
+
+}
Modified: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SuspendProcessInstanceCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SuspendProcessInstanceCommand.java 2008-12-11 11:38:23 UTC (rev 3334)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SuspendProcessInstanceCommand.java 2008-12-11 11:38:53 UTC (rev 3335)
@@ -14,10 +14,13 @@
*/
public class SuspendProcessInstanceCommand extends AbstractProcessInstanceBaseCommand {
+ private static final long serialVersionUID = 1L;
+
@Override
- public void execute(ProcessInstance processInstance)
+ public ProcessInstance execute(ProcessInstance processInstance)
{
processInstance.suspend();
+ return processInstance;
}
}
Added: jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SuspendTokenCommand.java
===================================================================
--- jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SuspendTokenCommand.java (rev 0)
+++ jbpm3/trunk/modules/core/src/main/java/org/jbpm/command/SuspendTokenCommand.java 2008-12-11 11:38:53 UTC (rev 3335)
@@ -0,0 +1,22 @@
+package org.jbpm.command;
+
+import org.jbpm.graph.exe.Token;
+
+/**
+ * Suspend the specified {@link Token}(s). See {@link AbstractTokenBaseCommand}
+ * to check possibilities to specify {@link Token}(s).
+ *
+ * @author bernd.ruecker at camunda.com
+ */
+public class SuspendTokenCommand extends AbstractTokenBaseCommand {
+
+ private static final long serialVersionUID = 1L;
+
+ @Override
+ public Token execute(Token token)
+ {
+ token.suspend();
+ return token;
+ }
+
+}
More information about the jbpm-commits
mailing list