[jboss-svn-commits] JBL Code SVN: r35940 - in labs/jbossrules/trunk/drools-grid/drools-grid-impl/src: test/java/org/drools/grid and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Nov 10 15:45:03 EST 2010
Author: salaboy21
Date: 2010-11-10 15:45:03 -0500 (Wed, 10 Nov 2010)
New Revision: 35940
Modified:
labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/GridNodeRemoteClient.java
labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBaseProviderRemoteClient.java
labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBaseRemoteClient.java
labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBuilderProviderRemoteClient.java
labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/StatefulKnowledgeSessionRemoteClient.java
labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/test/java/org/drools/grid/NodeTests.java
Log:
JBRULES-2772: Drools Grid Impl2 remoting features (socket)
- Adding more remoting implementations
Modified: labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/GridNodeRemoteClient.java
===================================================================
--- labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/GridNodeRemoteClient.java 2010-11-10 17:35:29 UTC (rev 35939)
+++ labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/GridNodeRemoteClient.java 2010-11-10 20:45:03 UTC (rev 35940)
@@ -69,7 +69,7 @@
}
public String getId() {
- throw new UnsupportedOperationException( "Not supported yet." );
+ return gsd.getId();
}
public void init(Object context) {
Modified: labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBaseProviderRemoteClient.java
===================================================================
--- labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBaseProviderRemoteClient.java 2010-11-10 17:35:29 UTC (rev 35939)
+++ labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBaseProviderRemoteClient.java 2010-11-10 20:45:03 UTC (rev 35940)
@@ -17,7 +17,6 @@
package org.drools.grid.remote;
-import java.io.Serializable;
import java.net.InetSocketAddress;
import java.util.Arrays;
import java.util.Properties;
@@ -29,8 +28,6 @@
import org.drools.command.SetVariableCommand;
import org.drools.grid.GridNode;
import org.drools.grid.GridServiceDescription;
-import org.drools.grid.internal.responsehandlers.BlockingMessageResponseHandler;
-import org.drools.grid.io.Conversation;
import org.drools.grid.io.ConversationManager;
import org.drools.grid.io.impl.CommandImpl;
import org.drools.runtime.Environment;
@@ -71,12 +68,32 @@
}
public KnowledgeBase newKnowledgeBase() {
- String localId = UUID.randomUUID().toString();
+ return newKnowledgeBase("", null);
+ }
+
+ public KnowledgeBase newKnowledgeBase(String kbaseId) {
+ return newKnowledgeBase(kbaseId, null);
+ }
+
+ public KnowledgeBase newKnowledgeBase(KnowledgeBaseConfiguration conf) {
+ return newKnowledgeBase(null, conf);
+ }
+
+ public KnowledgeBase newKnowledgeBase(String kbaseId,
+ KnowledgeBaseConfiguration conf) {
+ String localId = "";
+ if(kbaseId == null || kbaseId.equals("")){
+ localId = UUID.randomUUID().toString();
+ }
+ else{
+ localId = kbaseId;
+ }
+
CommandImpl cmd = new CommandImpl( "execute",
Arrays.asList( new Object[]{ new SetVariableCommand( "__TEMP__",
localId,
- new NewKnowledgeBaseCommand( null ) ) } ) );
+ new NewKnowledgeBaseCommand( conf ) ) } ) );
ConversationUtil.sendMessage( this.cm,
(InetSocketAddress) this.gsd.getAddresses().get( "socket" ).getObject(),
@@ -86,22 +103,8 @@
return new KnowledgeBaseRemoteClient( localId,
this.gsd,
this.cm );
-
}
- public KnowledgeBase newKnowledgeBase(String kbaseId) {
- throw new UnsupportedOperationException( "Not supported yet." );
- }
-
- public KnowledgeBase newKnowledgeBase(KnowledgeBaseConfiguration conf) {
- throw new UnsupportedOperationException( "Not supported yet." );
- }
-
- public KnowledgeBase newKnowledgeBase(String kbaseId,
- KnowledgeBaseConfiguration conf) {
- throw new UnsupportedOperationException( "Not supported yet." );
- }
-
public Environment newEnvironment() {
throw new UnsupportedOperationException( "Not supported yet." );
}
Modified: labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBaseRemoteClient.java
===================================================================
--- labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBaseRemoteClient.java 2010-11-10 17:35:29 UTC (rev 35939)
+++ labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBaseRemoteClient.java 2010-11-10 20:45:03 UTC (rev 35940)
@@ -17,7 +17,6 @@
package org.drools.grid.remote;
-import java.io.Serializable;
import java.net.InetSocketAddress;
import java.util.Arrays;
import java.util.Collection;
@@ -35,8 +34,6 @@
import org.drools.event.knowledgebase.KnowledgeBaseEventListener;
import org.drools.grid.GridNode;
import org.drools.grid.GridServiceDescription;
-import org.drools.grid.internal.responsehandlers.BlockingMessageResponseHandler;
-import org.drools.grid.io.Conversation;
import org.drools.grid.io.ConversationManager;
import org.drools.grid.io.impl.CollectionClient;
import org.drools.grid.io.impl.CommandImpl;
Modified: labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBuilderProviderRemoteClient.java
===================================================================
--- labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBuilderProviderRemoteClient.java 2010-11-10 17:35:29 UTC (rev 35939)
+++ labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/KnowledgeBuilderProviderRemoteClient.java 2010-11-10 20:45:03 UTC (rev 35940)
@@ -65,13 +65,27 @@
}
public KnowledgeBuilder newKnowledgeBuilder() {
+ return newKnowledgeBuilder(null, null);
+
- String localId = UUID.randomUUID().toString();
+ }
+ public KnowledgeBuilder newKnowledgeBuilder(KnowledgeBuilderConfiguration conf) {
+ return newKnowledgeBuilder(null, conf);
+ }
+
+ public KnowledgeBuilder newKnowledgeBuilder(KnowledgeBase kbase) {
+ return newKnowledgeBuilder(kbase, null);
+ }
+
+ public KnowledgeBuilder newKnowledgeBuilder(KnowledgeBase kbase,
+ KnowledgeBuilderConfiguration conf) {
+ String localId = UUID.randomUUID().toString();
+
CommandImpl cmd = new CommandImpl( "execute",
Arrays.asList( new Object[]{ new SetVariableCommand( "__TEMP__",
localId,
- new NewKnowledgeBuilderCommand( null ) ) } ) );
+ new NewKnowledgeBuilderCommand( conf ) ) } ) );
ConversationUtil.sendMessage( this.cm,
(InetSocketAddress) this.gsd.getAddresses().get( "socket" ).getObject(),
@@ -81,22 +95,8 @@
return new KnowledgeBuilderRemoteClient( localId,
this.gsd,
this.cm );
-
}
- public KnowledgeBuilder newKnowledgeBuilder(KnowledgeBuilderConfiguration conf) {
- throw new UnsupportedOperationException( "Not supported yet." );
- }
-
- public KnowledgeBuilder newKnowledgeBuilder(KnowledgeBase kbase) {
- throw new UnsupportedOperationException( "Not supported yet." );
- }
-
- public KnowledgeBuilder newKnowledgeBuilder(KnowledgeBase kbase,
- KnowledgeBuilderConfiguration conf) {
- throw new UnsupportedOperationException( "Not supported yet." );
- }
-
public JaxbConfiguration newJaxbConfiguration(Options xjcOpts,
String systemId) {
throw new UnsupportedOperationException( "Not supported yet." );
Modified: labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/StatefulKnowledgeSessionRemoteClient.java
===================================================================
--- labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/StatefulKnowledgeSessionRemoteClient.java 2010-11-10 17:35:29 UTC (rev 35939)
+++ labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/main/java/org/drools/grid/remote/StatefulKnowledgeSessionRemoteClient.java 2010-11-10 20:45:03 UTC (rev 35940)
@@ -24,10 +24,22 @@
import org.drools.KnowledgeBase;
import org.drools.command.Command;
import org.drools.command.CommandFactory;
+import org.drools.command.GetSessionClockCommand;
import org.drools.command.KnowledgeContextResolveFromContextCommand;
+import org.drools.command.runtime.DisposeCommand;
+import org.drools.command.runtime.GetGlobalsCommand;
+import org.drools.command.runtime.process.AbortProcessInstanceCommand;
+import org.drools.command.runtime.process.GetProcessInstanceCommand;
+import org.drools.command.runtime.process.GetProcessInstancesCommand;
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.FireUntilHaltCommand;
import org.drools.command.runtime.rule.GetFactHandleCommand;
+import org.drools.command.runtime.rule.GetFactHandlesCommand;
+import org.drools.command.runtime.rule.GetObjectCommand;
+import org.drools.command.runtime.rule.GetObjectsCommand;
+import org.drools.command.runtime.rule.HaltCommand;
import org.drools.command.runtime.rule.InsertObjectCommand;
import org.drools.command.runtime.rule.UpdateCommand;
import org.drools.event.process.ProcessEventListener;
@@ -81,42 +93,77 @@
}
public void dispose() {
- throw new UnsupportedOperationException( "Not supported yet." );
- }
-
- public int fireAllRules() {
String kresultsId = "kresults_" + this.gsd.getId();
CommandImpl cmd = new CommandImpl( "execute",
- Arrays.asList( new Object[]{ new KnowledgeContextResolveFromContextCommand( CommandFactory.newFireAllRules(),
+ Arrays.asList( new Object[]{ new KnowledgeContextResolveFromContextCommand( new DisposeCommand(),
null,
null,
this.instanceId,
kresultsId ) } ) );
- Object result = ConversationUtil.sendMessage( this.cm,
+ ConversationUtil.sendMessage( this.cm,
(InetSocketAddress) this.gsd.getAddresses().get( "socket" ).getObject(),
this.gsd.getId(),
cmd );
+ }
- return (Integer) result;
+ public int fireAllRules() {
+ return fireAllRules(-1);
}
public int fireAllRules(int max) {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl( "execute",
+ Arrays.asList( new Object[]{ new KnowledgeContextResolveFromContextCommand( CommandFactory.newFireAllRules(max),
+ null,
+ null,
+ this.instanceId,
+ kresultsId ) } ) );
+
+ Object result = ConversationUtil.sendMessage( this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get( "socket" ).getObject(),
+ this.gsd.getId(),
+ cmd );
+
+ return (Integer) result;
}
public int fireAllRules(AgendaFilter agendaFilter) {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl( "execute",
+ Arrays.asList( new Object[]{ new KnowledgeContextResolveFromContextCommand( new FireAllRulesCommand(agendaFilter),
+ null,
+ null,
+ this.instanceId,
+ kresultsId ) } ) );
+
+ Object result = ConversationUtil.sendMessage( this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get( "socket" ).getObject(),
+ this.gsd.getId(),
+ cmd );
+
+ return (Integer) result;
}
public void fireUntilHalt() {
- throw new UnsupportedOperationException( "Not supported yet." );
+ fireUntilHalt(null);
}
public void fireUntilHalt(AgendaFilter agendaFilter) {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand( new FireUntilHaltCommand( agendaFilter ),
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
}
public <T> T execute(Command<T> command) {
@@ -126,8 +173,21 @@
}
public <T extends SessionClock> T getSessionClock() {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand( new GetSessionClockCommand(),
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ Object result = ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
+ return (T) result;
}
+
public void setGlobal(String identifier,
Object object) {
@@ -166,7 +226,22 @@
}
public Globals getGlobals() {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand( new GetGlobalsCommand(),
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ Object result = ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
+
+
+
+ return (Globals)result;
}
public Calendars getCalendars() {
@@ -208,7 +283,18 @@
}
public void halt() {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand( new HaltCommand(),
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
}
public Agenda getAgenda() {
@@ -325,23 +411,62 @@
}
public Object getObject(FactHandle factHandle) {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand( new GetObjectCommand(factHandle ),
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ Object result = ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
+
+ return result;
}
public Collection<Object> getObjects() {
- throw new UnsupportedOperationException( "Not supported yet." );
+ return getObjects(null);
}
public Collection<Object> getObjects(ObjectFilter filter) {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand( new GetObjectsCommand( filter ),
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ Object result = ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
+
+ return (Collection<Object>)result;
}
public <T extends FactHandle> Collection<T> getFactHandles() {
- throw new UnsupportedOperationException( "Not supported yet." );
+ return getFactHandles(null);
}
public <T extends FactHandle> Collection<T> getFactHandles(ObjectFilter filter) {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand( new GetFactHandlesCommand( filter ),
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ Object result = ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
+
+ return (Collection<T>)result;
}
public long getFactCount() {
@@ -406,15 +531,57 @@
}
public Collection<ProcessInstance> getProcessInstances() {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand( new GetProcessInstancesCommand( ),
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ Object result = ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
+
+ return (Collection<ProcessInstance>)result;
}
public ProcessInstance getProcessInstance(long processInstanceId) {
- throw new UnsupportedOperationException( "Not supported yet." );
+ String kresultsId = "kresults_" + this.gsd.getId();
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand( new GetProcessInstanceCommand( processInstanceId ),
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ Object result = ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
+
+ return (ProcessInstance)result;
}
public void abortProcessInstance(long processInstanceId) {
- throw new UnsupportedOperationException( "Not supported yet." );
+
+ String kresultsId = "kresults_" + this.gsd.getId();
+ AbortProcessInstanceCommand cmdAbort = new AbortProcessInstanceCommand();
+ cmdAbort.setProcessInstanceId(processInstanceId);
+ CommandImpl cmd = new CommandImpl("execute",
+ Arrays.asList(new Object[]{ new KnowledgeContextResolveFromContextCommand(cmdAbort,
+ null,
+ null,
+ this.instanceId,
+ kresultsId )}));
+
+ ConversationUtil.sendMessage(this.cm,
+ (InetSocketAddress) this.gsd.getAddresses().get("socket").getObject(),
+ this.gsd.getId(),
+ cmd);
+
+
}
public WorkItemManager getWorkItemManager() {
Modified: labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/test/java/org/drools/grid/NodeTests.java
===================================================================
--- labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/test/java/org/drools/grid/NodeTests.java 2010-11-10 17:35:29 UTC (rev 35939)
+++ labs/jbossrules/trunk/drools-grid/drools-grid-impl/src/test/java/org/drools/grid/NodeTests.java 2010-11-10 20:45:03 UTC (rev 35940)
@@ -255,7 +255,7 @@
grid1.get(SocketService.class).close();
}
-
+
private void configureGrid1(Grid grid,
int port,
WhitePages wp) {
More information about the jboss-svn-commits
mailing list