[jboss-svn-commits] JBL Code SVN: r26468 - in labs/jbossrules/trunk: drools-core/src/main/java/org/drools/impl and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue May 12 07:54:20 EDT 2009
Author: KrisVerlaenen
Date: 2009-05-12 07:54:20 -0400 (Tue, 12 May 2009)
New Revision: 26468
Added:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/command/SetProcessInstanceStateCommand.java
Modified:
labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/process/ProcessRuntime.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/impl/StatefulKnowledgeSessionImpl.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/command/impl/CommandBasedStatefulKnowledgeSession.java
Log:
- added abortProcessInstance method
Modified: labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/process/ProcessRuntime.java
===================================================================
--- labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/process/ProcessRuntime.java 2009-05-12 11:53:27 UTC (rev 26467)
+++ labs/jbossrules/trunk/drools-api/src/main/java/org/drools/runtime/process/ProcessRuntime.java 2009-05-12 11:54:20 UTC (rev 26468)
@@ -16,6 +16,8 @@
Collection<ProcessInstance> getProcessInstances();
ProcessInstance getProcessInstance(long id);
+
+ void abortProcessInstance(long id);
WorkItemManager getWorkItemManager();
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/impl/StatefulKnowledgeSessionImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/impl/StatefulKnowledgeSessionImpl.java 2009-05-12 11:53:27 UTC (rev 26467)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/impl/StatefulKnowledgeSessionImpl.java 2009-05-12 11:54:20 UTC (rev 26468)
@@ -243,6 +243,10 @@
public ProcessInstance getProcessInstance(long id) {
return this.session.getProcessInstance( id );
}
+
+ public void abortProcessInstance(long id) {
+ this.session.getProcessInstance( id ).setState( ProcessInstance.STATE_ABORTED );
+ }
public Collection<ProcessInstance> getProcessInstances() {
List<ProcessInstance> result = new ArrayList<ProcessInstance>();
Added: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/command/SetProcessInstanceStateCommand.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/command/SetProcessInstanceStateCommand.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/command/SetProcessInstanceStateCommand.java 2009-05-12 11:54:20 UTC (rev 26468)
@@ -0,0 +1,39 @@
+package org.drools.process.command;
+
+import org.drools.process.instance.ProcessInstance;
+import org.drools.reteoo.ReteooWorkingMemory;
+
+public class SetProcessInstanceStateCommand implements Command<Object> {
+
+ private Long processInstanceId;
+ private int state;
+
+ public Long getProcessInstanceId() {
+ return processInstanceId;
+ }
+
+ public void setProcessInstanceId(Long processInstanceId) {
+ this.processInstanceId = processInstanceId;
+ }
+
+ public int getState() {
+ return state;
+ }
+
+ public void setState(int state) {
+ this.state = state;
+ }
+
+ public Object execute(ReteooWorkingMemory session) {
+ if (processInstanceId == null) {
+ return null;
+ }
+ ((ProcessInstance) session.getProcessInstance(processInstanceId)).setState(state);
+ return null;
+ }
+
+ public String toString() {
+ return "session.getProcessInstance(" + processInstanceId + ");";
+ }
+
+}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/command/impl/CommandBasedStatefulKnowledgeSession.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/command/impl/CommandBasedStatefulKnowledgeSession.java 2009-05-12 11:53:27 UTC (rev 26467)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/process/command/impl/CommandBasedStatefulKnowledgeSession.java 2009-05-12 11:54:20 UTC (rev 26468)
@@ -49,6 +49,7 @@
import org.drools.process.command.RemoveEventListenerCommand;
import org.drools.process.command.RetractCommand;
import org.drools.process.command.SetGlobalCommand;
+import org.drools.process.command.SetProcessInstanceStateCommand;
import org.drools.process.command.SignalEventCommand;
import org.drools.process.command.StartProcessCommand;
import org.drools.process.command.UnregisterExitPointCommand;
@@ -98,6 +99,13 @@
command.setProcessInstanceId( id );
return commandService.execute( command );
}
+
+ public void abortProcessInstance(long id) {
+ SetProcessInstanceStateCommand command = new SetProcessInstanceStateCommand();
+ command.setProcessInstanceId( id );
+ command.setState( ProcessInstance.STATE_ABORTED );
+ commandService.execute( command );
+ }
public CommandService getCommandService() {
return commandService;
More information about the jboss-svn-commits
mailing list