[jboss-svn-commits] JBL Code SVN: r35278 - in labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools: distributed/directory/impl and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Sep 24 14:05:10 EDT 2010


Author: salaboy21
Date: 2010-09-24 14:05:09 -0400 (Fri, 24 Sep 2010)
New Revision: 35278

Added:
   labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/distributed/connectors/
Modified:
   labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/distributed/directory/impl/DirectoryNodeServiceGridClient.java
   labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/distributed/directory/impl/DirectoryNodeServiceImpl.java
   labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/grid/distributed/connectors/DistributedRioDirectoryConnector.java
Log:
JBRULES-2618:  Drools Grid Services - Improve and clean tests
	- moving connectors to distributed directory

Modified: labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/distributed/directory/impl/DirectoryNodeServiceGridClient.java
===================================================================
--- labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/distributed/directory/impl/DirectoryNodeServiceGridClient.java	2010-09-24 17:39:24 UTC (rev 35277)
+++ labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/distributed/directory/impl/DirectoryNodeServiceGridClient.java	2010-09-24 18:05:09 UTC (rev 35278)
@@ -135,6 +135,14 @@
         return ServiceType.DISTRIBUTED;
     }
 
+    public String lookupKBaseLocationId(String kbaseId) throws ConnectorException, RemoteException {
+        connector.connect();
+        DirectoryNodeService client = ((DistributedRioDirectoryConnector) connector).getDirectoryNodeService();
+        String result = client.lookupKBaseLocationId(kbaseId);
+        connector.disconnect();
+        return result;
+    }
+
     
    
   

Modified: labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/distributed/directory/impl/DirectoryNodeServiceImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/distributed/directory/impl/DirectoryNodeServiceImpl.java	2010-09-24 17:39:24 UTC (rev 35277)
+++ labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/distributed/directory/impl/DirectoryNodeServiceImpl.java	2010-09-24 18:05:09 UTC (rev 35278)
@@ -10,14 +10,13 @@
 import java.util.Map;
 import java.util.UUID;
 import org.drools.KnowledgeBase;
-import org.drools.command.KnowledgeContextResolveFromContextCommand;
-import org.drools.grid.distributed.directory.commands.GetKnowledgeBaseGridCommand;
 import org.drools.grid.ConnectorException;
-import org.drools.grid.internal.Message;
 import org.drools.grid.ExecutionNodeService;
 import org.drools.grid.DirectoryNodeService;
 import org.drools.grid.GenericConnectorFactory;
 import org.drools.grid.GenericNodeConnector;
+import org.drools.grid.distributed.KnowledgeBaseGridClient;
+import org.drools.grid.internal.MessageSession;
 
 /**
  *
@@ -95,18 +94,33 @@
 
         try {
             //@TODO: This is a bad hack.. I need to improve this a lot
-            Message msg = executionNode.write(new Message(999, 1000, false, new KnowledgeContextResolveFromContextCommand(new GetKnowledgeBaseGridCommand(), null, kbaseId, null, null)));
-
-            if (msg.getPayload() instanceof KnowledgeBase) {
-                return (KnowledgeBase) msg.getPayload();
-            }
-            return null;
+//            Message msg = executionNode.write(new Message(999, 1000, false, new KnowledgeContextResolveFromContextCommand(new GetKnowledgeBaseGridCommand(), null, kbaseId, null, null)));
+//            
+//            if (msg.getPayload() instanceof KnowledgeBase) {
+//                return (KnowledgeBase) msg.getPayload();
+//            }
+            //@TODO: I need to create a client with the executionNode and the kbaseId
+            GenericNodeConnector connector = GenericConnectorFactory.newConnector(executionNode.getId());
+            return new KnowledgeBaseGridClient( kbaseId,
+                                            connector,
+                                            new MessageSession(),
+                                            connector.getConnection() );
+            
+            
         } catch (Exception e) {
             throw new RuntimeException("Unable to execute message",
                     e);
         }
     }
+    
+    @Override
+    public String lookupKBaseLocationId(String kbaseId) throws ConnectorException, RemoteException {
+        ExecutionNodeService executionNode = null;
+        String execNodeId = (String) kbaseDirectoryMap.get(kbaseId);
 
+        return execNodeId;
+    }
+
     @Override
     public Map<String, String> getExecutorsMap() throws ConnectorException, RemoteException {
         return directoryMap;

Modified: labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/grid/distributed/connectors/DistributedRioDirectoryConnector.java
===================================================================
--- labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/grid/distributed/connectors/DistributedRioDirectoryConnector.java	2010-09-24 17:39:24 UTC (rev 35277)
+++ labs/jbossrules/trunk/drools-grid/drools-grid-distributed-dir-rio/src/main/java/org/drools/grid/distributed/connectors/DistributedRioDirectoryConnector.java	2010-09-24 18:05:09 UTC (rev 35278)
@@ -206,4 +206,8 @@
     public ServiceType getServiceType() throws ConnectorException, RemoteException {
         return ServiceType.DISTRIBUTED;
     }
+
+    public String lookupKBaseLocationId(String kbaseId) throws ConnectorException, RemoteException {
+        return this.directoryNodeService.lookupKBaseLocationId(kbaseId);
+    }
 }



More information about the jboss-svn-commits mailing list