[jboss-svn-commits] JBL Code SVN: r28082 - in labs/jbossrules/trunk: drools-core/src/main/java/org/drools/command and 6 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Jul 15 22:21:32 EDT 2009
Author: mark.proctor at jboss.com
Date: 2009-07-15 22:21:30 -0400 (Wed, 15 Jul 2009)
New Revision: 28082
Added:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/AbortWorkItemCommand.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessEventListenersCommand.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessInstanceCommand.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessInstancesCommand.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/SetProcessInstanceStateCommand.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/SignalEventCommand.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/StartProcessCommand.java
Removed:
labs/jbossrules/trunk/drools-core/src/main/java/org/codehaus/
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/process/
Modified:
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/impl/CommandBasedStatefulKnowledgeSession.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/impl/CommandFactoryProviderImpl.java
labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/help/impl/BatchExecutionHelperProviderImpl.java
labs/jbossrules/trunk/drools-persistence-jpa/src/main/java/org/drools/persistence/processinstance/JPASignalManager.java
labs/jbossrules/trunk/drools-persistence-jpa/src/test/java/org/drools/persistence/session/SingleSessionCommandServiceTest.java
Log:
JBRULES-2209 Refactor Commands to mirror drools-api
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/impl/CommandBasedStatefulKnowledgeSession.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/impl/CommandBasedStatefulKnowledgeSession.java 2009-07-16 02:09:04 UTC (rev 28081)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/impl/CommandBasedStatefulKnowledgeSession.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -19,13 +19,13 @@
import org.drools.command.RegisterWorkItemHandlerCommand;
import org.drools.command.RemoveEventListenerCommand;
import org.drools.command.SetGlobalCommand;
-import org.drools.command.process.AbortWorkItemCommand;
-import org.drools.command.process.GetProcessEventListenersCommand;
-import org.drools.command.process.GetProcessInstanceCommand;
-import org.drools.command.process.GetProcessInstancesCommand;
-import org.drools.command.process.SetProcessInstanceStateCommand;
-import org.drools.command.process.SignalEventCommand;
-import org.drools.command.process.StartProcessCommand;
+import org.drools.command.runtime.process.AbortWorkItemCommand;
+import org.drools.command.runtime.process.GetProcessEventListenersCommand;
+import org.drools.command.runtime.process.GetProcessInstanceCommand;
+import org.drools.command.runtime.process.GetProcessInstancesCommand;
+import org.drools.command.runtime.process.SetProcessInstanceStateCommand;
+import org.drools.command.runtime.process.SignalEventCommand;
+import org.drools.command.runtime.process.StartProcessCommand;
import org.drools.command.runtime.rule.AgendaGroupSetFocusCommand;
import org.drools.command.runtime.rule.ClearActivationGroupCommand;
import org.drools.command.runtime.rule.ClearAgendaCommand;
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/impl/CommandFactoryProviderImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/impl/CommandFactoryProviderImpl.java 2009-07-16 02:09:04 UTC (rev 28081)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/impl/CommandFactoryProviderImpl.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -9,9 +9,9 @@
import org.drools.command.GetGlobalCommand;
import org.drools.command.SetGlobalCommand;
import org.drools.command.Setter;
-import org.drools.command.process.AbortWorkItemCommand;
-import org.drools.command.process.SignalEventCommand;
-import org.drools.command.process.StartProcessCommand;
+import org.drools.command.runtime.process.AbortWorkItemCommand;
+import org.drools.command.runtime.process.SignalEventCommand;
+import org.drools.command.runtime.process.StartProcessCommand;
import org.drools.command.runtime.rule.FireAllRulesCommand;
import org.drools.command.runtime.rule.GetObjectCommand;
import org.drools.command.runtime.rule.GetObjectsCommand;
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process (from rev 28079, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/process)
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/AbortWorkItemCommand.java (from rev 28080, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/process/AbortWorkItemCommand.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/AbortWorkItemCommand.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/AbortWorkItemCommand.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -0,0 +1,41 @@
+package org.drools.command.runtime.process;
+
+import org.drools.command.Context;
+import org.drools.command.impl.GenericCommand;
+import org.drools.command.impl.KnowledgeCommandContext;
+import org.drools.reteoo.ReteooWorkingMemory;
+import org.drools.runtime.StatefulKnowledgeSession;
+
+public class AbortWorkItemCommand
+ implements
+ GenericCommand<Object> {
+
+ private long workItemId;
+
+ public AbortWorkItemCommand() {
+
+ }
+
+ public AbortWorkItemCommand(long workItemId) {
+ this.workItemId = workItemId;
+ }
+
+ public long getWorkItemId() {
+ return workItemId;
+ }
+
+ public void setWorkItemId(long workItemId) {
+ this.workItemId = workItemId;
+ }
+
+ public Void execute(Context context) {
+ StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
+ ksession.getWorkItemManager().abortWorkItem( workItemId );
+ return null;
+ }
+
+ public String toString() {
+ return "session.getWorkItemManager().abortWorkItem(" + workItemId + ");";
+ }
+
+}
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessEventListenersCommand.java (from rev 28080, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/process/GetProcessEventListenersCommand.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessEventListenersCommand.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessEventListenersCommand.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -0,0 +1,26 @@
+package org.drools.command.runtime.process;
+
+import java.util.Collection;
+
+import org.drools.command.Context;
+import org.drools.command.impl.GenericCommand;
+import org.drools.command.impl.KnowledgeCommandContext;
+import org.drools.event.RuleFlowEventListener;
+import org.drools.event.process.ProcessEventListener;
+import org.drools.reteoo.ReteooWorkingMemory;
+import org.drools.runtime.StatefulKnowledgeSession;
+import org.drools.runtime.process.ProcessInstance;
+
+public class GetProcessEventListenersCommand
+ implements
+ GenericCommand<Collection<ProcessEventListener> > {
+
+ public Collection<ProcessEventListener> execute(Context context) {
+ StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
+ return ksession.getProcessEventListeners();
+ }
+
+ public String toString() {
+ return "session.getProcessEventListeners();";
+ }
+}
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessInstanceCommand.java (from rev 28080, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/process/GetProcessInstanceCommand.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessInstanceCommand.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessInstanceCommand.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -0,0 +1,36 @@
+package org.drools.command.runtime.process;
+
+import java.util.Collection;
+
+import org.drools.command.Context;
+import org.drools.command.impl.GenericCommand;
+import org.drools.command.impl.KnowledgeCommandContext;
+import org.drools.reteoo.ReteooWorkingMemory;
+import org.drools.runtime.StatefulKnowledgeSession;
+import org.drools.runtime.process.ProcessInstance;
+
+public class GetProcessInstanceCommand implements GenericCommand<ProcessInstance> {
+
+ private Long processInstanceId;
+
+ public Long getProcessInstanceId() {
+ return processInstanceId;
+ }
+
+ public void setProcessInstanceId(Long processInstanceId) {
+ this.processInstanceId = processInstanceId;
+ }
+
+ public ProcessInstance execute(Context context) {
+ StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
+ if (processInstanceId == null) {
+ return null;
+ }
+ return ksession.getProcessInstance(processInstanceId);
+ }
+
+ public String toString() {
+ return "session.getProcessInstance(" + processInstanceId + ");";
+ }
+
+}
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessInstancesCommand.java (from rev 28080, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/process/GetProcessInstancesCommand.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessInstancesCommand.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/GetProcessInstancesCommand.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -0,0 +1,33 @@
+package org.drools.command.runtime.process;
+
+import java.util.ArrayList;
+import java.util.Collection;
+
+import org.drools.command.Context;
+import org.drools.command.impl.GenericCommand;
+import org.drools.command.impl.KnowledgeCommandContext;
+import org.drools.runtime.StatefulKnowledgeSession;
+import org.drools.runtime.process.ProcessInstance;
+
+public class GetProcessInstancesCommand
+ implements
+ GenericCommand<Collection<ProcessInstance>> {
+
+ public Collection<ProcessInstance> execute(Context context) {
+ StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
+
+ Collection<ProcessInstance> instances = ksession.getProcessInstances();
+ Collection<ProcessInstance> result = new ArrayList<ProcessInstance>();
+
+ for ( ProcessInstance instance : instances ) {
+ result.add( instance );
+ }
+
+ return result;
+ }
+
+ public String toString() {
+ return "session.getProcessInstances();";
+ }
+
+}
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/SetProcessInstanceStateCommand.java (from rev 28080, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/process/SetProcessInstanceStateCommand.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/SetProcessInstanceStateCommand.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/SetProcessInstanceStateCommand.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -0,0 +1,47 @@
+package org.drools.command.runtime.process;
+
+import java.util.Collection;
+
+import org.drools.command.Context;
+import org.drools.command.impl.GenericCommand;
+import org.drools.command.impl.KnowledgeCommandContext;
+import org.drools.process.instance.ProcessInstance;
+import org.drools.reteoo.ReteooWorkingMemory;
+import org.drools.runtime.StatefulKnowledgeSession;
+import org.drools.runtime.rule.FactHandle;
+
+public class SetProcessInstanceStateCommand implements GenericCommand<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(Context context) {
+ StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
+ if (processInstanceId == null) {
+ return null;
+ }
+ ((ProcessInstance) ksession.getProcessInstance(processInstanceId)).setState(state);
+ return null;
+ }
+
+ public String toString() {
+ return "session.getProcessInstance(" + processInstanceId + ");";
+ }
+
+}
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/SignalEventCommand.java (from rev 28080, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/process/SignalEventCommand.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/SignalEventCommand.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/SignalEventCommand.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -0,0 +1,78 @@
+package org.drools.command.runtime.process;
+
+import org.drools.command.Context;
+import org.drools.command.impl.GenericCommand;
+import org.drools.command.impl.KnowledgeCommandContext;
+import org.drools.runtime.StatefulKnowledgeSession;
+import org.drools.runtime.process.ProcessInstance;
+
+public class SignalEventCommand implements GenericCommand<Object> {
+
+ private long processInstanceId = -1;
+ private String eventType;
+ private Object event;
+
+ public SignalEventCommand() {
+ }
+
+ public SignalEventCommand(String eventType,
+ Object event) {
+ this.eventType = eventType;
+ this.event = event;
+ }
+
+ public SignalEventCommand(long processInstanceId,
+ String eventType,
+ Object event) {
+ this.processInstanceId = processInstanceId;
+ this.eventType = eventType;
+ this.event = event;
+ }
+
+ public long getProcessInstanceId() {
+ return processInstanceId;
+ }
+
+ public void setProcessInstanceId(long processInstanceId) {
+ this.processInstanceId = processInstanceId;
+ }
+
+ public String getEventType() {
+ return eventType;
+ }
+
+ public void setEventType(String eventType) {
+ this.eventType = eventType;
+ }
+
+ public Object getEvent() {
+ return event;
+ }
+
+ public void setEvent(Object event) {
+ this.event = event;
+ }
+
+ public Object execute(Context context) {
+ StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
+
+ if (processInstanceId == -1) {
+ ksession.signalEvent(eventType, event);
+ } else {
+ ProcessInstance processInstance = ksession.getProcessInstance(processInstanceId);
+ if (processInstance != null) {
+ processInstance.signalEvent(eventType, event);
+ }
+ }
+ return null;
+ }
+
+ public String toString() {
+ if (processInstanceId == -1) {
+ return "session.getSignalManager().signalEvent(" + eventType + ", " + event + ");";
+ } else {
+ return "processInstance.signalEvent(" + eventType + ", " + event + ");";
+ }
+ }
+
+}
Copied: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/StartProcessCommand.java (from rev 28080, labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/process/StartProcessCommand.java)
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/StartProcessCommand.java (rev 0)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/command/runtime/process/StartProcessCommand.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -0,0 +1,71 @@
+package org.drools.command.runtime.process;
+
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.drools.command.Context;
+import org.drools.command.impl.GenericCommand;
+import org.drools.command.impl.KnowledgeCommandContext;
+import org.drools.process.instance.ProcessInstance;
+import org.drools.reteoo.ReteooWorkingMemory;
+import org.drools.runtime.StatefulKnowledgeSession;
+
+public class StartProcessCommand implements GenericCommand<ProcessInstance> {
+
+ private String processId;
+ private Map<String, Object> parameters = new HashMap<String, Object>();
+ private List<Object> data = null;
+
+ public String getProcessId() {
+ return processId;
+ }
+
+ public void setProcessId(String processId) {
+ this.processId = processId;
+ }
+
+ public Map<String, Object> getParameters() {
+ return parameters;
+ }
+
+ public void setParameters(Map<String, Object> parameters) {
+ this.parameters = parameters;
+ }
+
+ public List<Object> getData() {
+ return data;
+ }
+
+ public void setData(List<Object> data) {
+ this.data = data;
+ }
+
+ public ProcessInstance execute(Context context) {
+ StatefulKnowledgeSession ksession = ((KnowledgeCommandContext) context).getStatefulKnowledgesession();
+
+ if (data != null) {
+ for (Object o: data) {
+ ksession.insert(o);
+ }
+ }
+ ProcessInstance processInstance = (ProcessInstance) ksession.startProcess(processId, parameters);
+ return processInstance;
+ }
+
+ public String toString() {
+ String result = "session.startProcess(" + processId + ", [";
+ if (parameters != null) {
+ int i = 0;
+ for (Map.Entry<String, Object> entry: parameters.entrySet()) {
+ if (i++ > 0) {
+ result += ", ";
+ }
+ result += entry.getKey() + "=" + entry.getValue();
+ }
+ }
+ result += "]);";
+ return result;
+ }
+
+}
Modified: labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/help/impl/BatchExecutionHelperProviderImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/help/impl/BatchExecutionHelperProviderImpl.java 2009-07-16 02:09:04 UTC (rev 28081)
+++ labs/jbossrules/trunk/drools-core/src/main/java/org/drools/runtime/help/impl/BatchExecutionHelperProviderImpl.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -16,9 +16,9 @@
import org.drools.command.GetGlobalCommand;
import org.drools.command.SetGlobalCommand;
import org.drools.command.Setter;
-import org.drools.command.process.AbortWorkItemCommand;
-import org.drools.command.process.SignalEventCommand;
-import org.drools.command.process.StartProcessCommand;
+import org.drools.command.runtime.process.AbortWorkItemCommand;
+import org.drools.command.runtime.process.SignalEventCommand;
+import org.drools.command.runtime.process.StartProcessCommand;
import org.drools.command.runtime.rule.FireAllRulesCommand;
import org.drools.command.runtime.rule.GetObjectCommand;
import org.drools.command.runtime.rule.GetObjectsCommand;
Modified: labs/jbossrules/trunk/drools-persistence-jpa/src/main/java/org/drools/persistence/processinstance/JPASignalManager.java
===================================================================
--- labs/jbossrules/trunk/drools-persistence-jpa/src/main/java/org/drools/persistence/processinstance/JPASignalManager.java 2009-07-16 02:09:04 UTC (rev 28081)
+++ labs/jbossrules/trunk/drools-persistence-jpa/src/main/java/org/drools/persistence/processinstance/JPASignalManager.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -7,7 +7,7 @@
import org.drools.WorkingMemory;
import org.drools.command.CommandService;
-import org.drools.command.SignalEventCommand;
+import org.drools.command.runtime.process.SignalEventCommand;
import org.drools.process.instance.event.DefaultSignalManager;
import org.drools.runtime.EnvironmentName;
import org.drools.runtime.process.ProcessInstance;
Modified: labs/jbossrules/trunk/drools-persistence-jpa/src/test/java/org/drools/persistence/session/SingleSessionCommandServiceTest.java
===================================================================
--- labs/jbossrules/trunk/drools-persistence-jpa/src/test/java/org/drools/persistence/session/SingleSessionCommandServiceTest.java 2009-07-16 02:09:04 UTC (rev 28081)
+++ labs/jbossrules/trunk/drools-persistence-jpa/src/test/java/org/drools/persistence/session/SingleSessionCommandServiceTest.java 2009-07-16 02:21:30 UTC (rev 28082)
@@ -18,8 +18,8 @@
import org.drools.RuleBaseFactory;
import org.drools.SessionConfiguration;
import org.drools.command.CompleteWorkItemCommand;
-import org.drools.command.GetProcessInstanceCommand;
-import org.drools.command.StartProcessCommand;
+import org.drools.command.runtime.process.GetProcessInstanceCommand;
+import org.drools.command.runtime.process.StartProcessCommand;
import org.drools.compiler.PackageBuilder;
import org.drools.compiler.ProcessBuilder;
import org.drools.definition.KnowledgePackage;
More information about the jboss-svn-commits
mailing list