[jboss-svn-commits] JBL Code SVN: r33822 - labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Sat Jul 10 19:08:34 EDT 2010
Author: diegoll
Date: 2010-07-10 19:08:34 -0400 (Sat, 10 Jul 2010)
New Revision: 33822
Modified:
labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/KnowledgeBaseProviderLocalClient.java
labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/LocalConnectionNode.java
labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/LocalNodeConnector.java
Log:
added local implementation of knowledgeBase grid factory
Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/KnowledgeBaseProviderLocalClient.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/KnowledgeBaseProviderLocalClient.java 2010-07-10 10:53:38 UTC (rev 33821)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/KnowledgeBaseProviderLocalClient.java 2010-07-10 23:08:34 UTC (rev 33822)
@@ -6,6 +6,9 @@
import org.drools.KnowledgeBaseConfiguration;
import org.drools.KnowledgeBaseFactory;
import org.drools.KnowledgeBaseFactoryService;
+import org.drools.grid.DirectoryNodeService;
+import org.drools.grid.GenericNodeConnector;
+import org.drools.impl.KnowledgeBaseFactoryServiceImpl;
import org.drools.runtime.Environment;
import org.drools.runtime.KnowledgeSessionConfiguration;
@@ -13,6 +16,13 @@
implements
KnowledgeBaseFactoryService {
+ private GenericNodeConnector nodeConnector;
+ private KnowledgeBaseFactoryService decoratee = new KnowledgeBaseFactoryServiceImpl();
+
+ public KnowledgeBaseProviderLocalClient(GenericNodeConnector connector) {
+ this.nodeConnector = connector;
+ }
+
public Environment newEnvironment() {
return KnowledgeBaseFactory.newEnvironment();
}
@@ -46,8 +56,14 @@
}
public KnowledgeBase newKnowledgeBase(String kbaseId) {
- // TODO Auto-generated method stub
- return null;
+ try{
+ DirectoryNodeService directory = nodeConnector.getConnection().getDirectoryNode();
+ directory.registerKBase(kbaseId, nodeConnector.getId());
+ directory.dispose();
+ } catch (Exception e){
+ throw new IllegalStateException("Unable to register kbase " + kbaseId + " in directory", e);
+ }
+ return decoratee.newKnowledgeBase(kbaseId);
}
public KnowledgeBase newKnowledgeBase(String kbaseId,
Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/LocalConnectionNode.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/LocalConnectionNode.java 2010-07-10 10:53:38 UTC (rev 33821)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/LocalConnectionNode.java 2010-07-10 23:08:34 UTC (rev 33822)
@@ -17,23 +17,17 @@
package org.drools.grid.local;
-import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
+
import org.drools.KnowledgeBaseFactoryService;
import org.drools.builder.DirectoryLookupFactoryService;
import org.drools.builder.KnowledgeBuilderFactoryService;
import org.drools.grid.ConnectorType;
import org.drools.grid.GenericConnection;
-import org.drools.grid.GenericConnection;
import org.drools.grid.GenericNodeConnector;
-import org.drools.grid.GenericNodeConnector;
import org.drools.grid.NodeConnectionType;
-import org.drools.grid.NodeConnectionType;
-import org.drools.grid.local.DirectoryLookupProviderLocalClient;
-import org.drools.grid.local.KnowledgeBaseProviderLocalClient;
-import org.drools.grid.local.KnowledgeBuilderProviderLocalClient;
/**
*
@@ -42,9 +36,9 @@
public class LocalConnectionNode implements NodeConnectionType {
private final Map<Class<?>, Object> services = new ConcurrentHashMap<Class<?>, Object>();
- public LocalConnectionNode() {
+ public LocalConnectionNode(GenericNodeConnector nodeConnector) {
services.put(KnowledgeBuilderFactoryService.class, new KnowledgeBuilderProviderLocalClient());
- services.put(KnowledgeBaseFactoryService.class, new KnowledgeBaseProviderLocalClient());
+ services.put(KnowledgeBaseFactoryService.class, new KnowledgeBaseProviderLocalClient(nodeConnector));
services.put(DirectoryLookupFactoryService.class, new DirectoryLookupProviderLocalClient());
}
Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/LocalNodeConnector.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/LocalNodeConnector.java 2010-07-10 10:53:38 UTC (rev 33821)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-local/src/main/java/org/drools/grid/local/LocalNodeConnector.java 2010-07-10 23:08:34 UTC (rev 33822)
@@ -17,7 +17,6 @@
package org.drools.grid.local;
-import java.rmi.RemoteException;
import org.drools.grid.ConnectorException;
import org.drools.grid.ConnectorType;
import org.drools.grid.GenericConnection;
@@ -63,7 +62,7 @@
}
public NodeConnectionType getNodeConnectionType() throws ConnectorException {
- return new LocalConnectionNode();
+ return new LocalConnectionNode(this);
}
public ConnectorType getConnectorType() {
More information about the jboss-svn-commits
mailing list