[jboss-svn-commits] JBL Code SVN: r33738 - in labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src: main/java/org/drools/grid/services/strategies and 1 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sun Jul 4 18:01:34 EDT 2010


Author: salaboy21
Date: 2010-07-04 18:01:34 -0400 (Sun, 04 Jul 2010)
New Revision: 33738

Added:
   labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/DirectoryInstanceSelectionStrategy.java
Modified:
   labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/GridTopology.java
   labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/DirectoryInstanceByPrioritySelectionStrategy.java
   labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/ExecutionEnvByPrioritySelectionStrategy.java
   labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/BasicAPITestWithMina.java
   labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/RegisterMinaDirectoryTest.java
   labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/RegisterTaskTest.java
   labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/ServiceAPITest.java
Log:
cleaning grid topology class

Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/GridTopology.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/GridTopology.java	2010-07-02 23:15:06 UTC (rev 33737)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/GridTopology.java	2010-07-04 22:01:34 UTC (rev 33738)
@@ -8,7 +8,6 @@
 
 import org.drools.grid.ConnectorException;
 import org.drools.grid.DirectoryNodeService;
-import org.drools.grid.ExecutionNode;
 import org.drools.grid.GenericConnection;
 import org.drools.grid.GenericDirectoryConnector;
 import org.drools.grid.GenericHumanTaskConnector;
@@ -18,8 +17,9 @@
 import org.drools.grid.services.factory.ExecutionEnvironmentFactory;
 import org.drools.grid.services.factory.TaskServerInstanceFactory;
 import org.drools.grid.services.strategies.DirectoryInstanceByPrioritySelectionStrategy;
+import org.drools.grid.services.strategies.DirectoryInstanceSelectionStrategy;
+import org.drools.grid.services.strategies.ExecutionEnvByPrioritySelectionStrategy;
 import org.drools.grid.services.strategies.ExecutionEnvironmentSelectionStrategy;
-import org.drools.grid.strategies.ReturnAlwaysTheFirstSelectionStrategy;
 
 /**
  * @author salaboy  
@@ -30,8 +30,10 @@
     private Map<String, ExecutionEnvironment> executionEnvironments = new HashMap<String, ExecutionEnvironment>();
     private Map<String, DirectoryInstance> directories = new HashMap<String, DirectoryInstance>();
     private Map<String, TaskServerInstance> taskServerInstance = new HashMap<String, TaskServerInstance>();
-    
+    private final ExecutionEnvironmentSelectionStrategy DEFAULT_EXECTUTION_STRATEGY = new ExecutionEnvByPrioritySelectionStrategy();
+    private final DirectoryInstanceSelectionStrategy DEFAULT_DIRECTORY_STRATEGY = new DirectoryInstanceByPrioritySelectionStrategy();
 
+
     private Map<String, GenericConnection> connections = new HashMap<String, GenericConnection>();
 
     public GridTopology(String topologyName) {
@@ -126,25 +128,26 @@
         return strategy.getBestExecutionEnvironment(executionEnvironments);
     }
 
-    public ExecutionNode getExecutionNode() {
-        return null;
-
+    public ExecutionEnvironment getExecutionEnvironment(){
+        return DEFAULT_EXECTUTION_STRATEGY.getBestExecutionEnvironment(executionEnvironments);
     }
-    //@TODO: need to add strategy to get the execution node here!!!
 
-    public ExecutionNode getExecutionNode(ExecutionEnvironment ee) throws ConnectorException {
-        GenericConnection connection = connections.get(ee.getName());
-        return connection.getExecutionNode(new ReturnAlwaysTheFirstSelectionStrategy());
-    }
+  
 
     public String getTopologyName() {
         return topologyName;
     }
 
-    public DirectoryInstance getBestDirectoryInstance(DirectoryInstanceByPrioritySelectionStrategy strategy) {
-        return (DirectoryInstance) strategy.getBestGridResource(directories);
+    public DirectoryInstance getBestDirectoryInstance(DirectoryInstanceSelectionStrategy strategy) {
+        return (DirectoryInstance) strategy.getBestDirectoryInstance(directories);
     }
 
+    public DirectoryInstance getBestDirectoryInstance() {
+        return DEFAULT_DIRECTORY_STRATEGY.getBestDirectoryInstance(directories);
+    }
+
+
+
     public void disconectAllClients() throws ConnectorException, RemoteException {
         for (String key : executionEnvironments.keySet()) {
             executionEnvironments.get(key).getConnector().disconnect();

Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/DirectoryInstanceByPrioritySelectionStrategy.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/DirectoryInstanceByPrioritySelectionStrategy.java	2010-07-02 23:15:06 UTC (rev 33737)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/DirectoryInstanceByPrioritySelectionStrategy.java	2010-07-04 22:01:34 UTC (rev 33738)
@@ -32,7 +32,7 @@
  *
  * @author salaboy
  */
-public class DirectoryInstanceByPrioritySelectionStrategy{
+public class DirectoryInstanceByPrioritySelectionStrategy implements DirectoryInstanceSelectionStrategy{
 
     private List<DirectoryInstance> directories;
 
@@ -73,9 +73,11 @@
         this.directories = dirList;
     }
 
-    public DirectoryInstance getBestGridResource(Map<String, DirectoryInstance> directoryInstances) {
+    public DirectoryInstance getBestDirectoryInstance(Map<String, DirectoryInstance> directoryInstances) {
         setDirectoryInstances(directoryInstances);
         return getBestDirectoryInstance();
     }
 
+   
+
 }

Added: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/DirectoryInstanceSelectionStrategy.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/DirectoryInstanceSelectionStrategy.java	                        (rev 0)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/DirectoryInstanceSelectionStrategy.java	2010-07-04 22:01:34 UTC (rev 33738)
@@ -0,0 +1,29 @@
+/*
+ *  Copyright 2010 salaboy.
+ * 
+ *  Licensed under the Apache License, Version 2.0 (the "License");
+ *  you may not use this file except in compliance with the License.
+ *  You may obtain a copy of the License at
+ * 
+ *       http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ *  Unless required by applicable law or agreed to in writing, software
+ *  distributed under the License is distributed on an "AS IS" BASIS,
+ *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ *  See the License for the specific language governing permissions and
+ *  limitations under the License.
+ *  under the License.
+ */
+
+package org.drools.grid.services.strategies;
+
+import java.util.Map;
+import org.drools.grid.services.DirectoryInstance;
+
+/**
+ *
+ * @author salaboy
+ */
+public interface DirectoryInstanceSelectionStrategy {
+    public DirectoryInstance getBestDirectoryInstance(Map<String, DirectoryInstance> directoryInstance);
+}

Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/ExecutionEnvByPrioritySelectionStrategy.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/ExecutionEnvByPrioritySelectionStrategy.java	2010-07-02 23:15:06 UTC (rev 33737)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/main/java/org/drools/grid/services/strategies/ExecutionEnvByPrioritySelectionStrategy.java	2010-07-04 22:01:34 UTC (rev 33738)
@@ -24,9 +24,6 @@
 import java.util.Map;
 import org.drools.grid.ConnectorType;
 import org.drools.grid.services.ExecutionEnvironment;
-import org.drools.grid.services.configuration.GenericProvider;
-import org.drools.grid.services.configuration.LocalProvider;
-import org.drools.grid.services.configuration.MinaProvider;
 
 /**
  *

Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/BasicAPITestWithMina.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/BasicAPITestWithMina.java	2010-07-02 23:15:06 UTC (rev 33737)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/BasicAPITestWithMina.java	2010-07-04 22:01:34 UTC (rev 33738)
@@ -112,7 +112,7 @@
 
         // Give me an ExecutionNode in the selected environment
         // For the Mina we have just one Execution Node per server instance
-        ExecutionNode node = grid.getExecutionNode(ee);
+        ExecutionNode node = ee.getExecutionNode();
 
         Assert.assertNotNull(node);
 
@@ -192,7 +192,7 @@
 
         // Give me an ExecutionNode in the selected environment
         // For the Mina we have just one Execution Node per server instance
-        ExecutionNode node = grid.getExecutionNode(ee);
+        ExecutionNode node = ee.getExecutionNode();
         Assert.assertNotNull(node);
 
 

Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/RegisterMinaDirectoryTest.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/RegisterMinaDirectoryTest.java	2010-07-02 23:15:06 UTC (rev 33737)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/RegisterMinaDirectoryTest.java	2010-07-04 22:01:34 UTC (rev 33738)
@@ -166,7 +166,7 @@
 
         // Give me an ExecutionNode in the selected environment
         // For the Mina we have just one Execution Node per server instance
-        ExecutionNode node = grid.getExecutionNode(ee);
+        ExecutionNode node = ee.getExecutionNode();
 
         Assert.assertNotNull(node);
 

Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/RegisterTaskTest.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/RegisterTaskTest.java	2010-07-02 23:15:06 UTC (rev 33737)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/RegisterTaskTest.java	2010-07-04 22:01:34 UTC (rev 33738)
@@ -230,7 +230,7 @@
 
         // Give me an ExecutionNode in the selected environment
         // For the Mina we have just one Execution Node per server instance
-        ExecutionNode node = grid.getExecutionNode(ee);
+        ExecutionNode node = ee.getExecutionNode();
 
         Assert.assertNotNull(node);
          KnowledgeBuilder kbuilder =

Modified: labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/ServiceAPITest.java
===================================================================
--- labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/ServiceAPITest.java	2010-07-02 23:15:06 UTC (rev 33737)
+++ labs/jbossrules/branches/salaboy_drools_grid_api_separation/drools-grid/drools-grid-services/src/test/java/org/drools/services/ServiceAPITest.java	2010-07-04 22:01:34 UTC (rev 33738)
@@ -113,7 +113,7 @@
         Assert.assertNotNull(ee);
         System.out.println("EE Name = "+ee.getName());
 
-        ExecutionNode node = grid.getExecutionNode(ee);
+        ExecutionNode node = ee.getExecutionNode();
         Assert.assertNotNull(node);
 
          // Do a basic Runtime Test that register a ksession and fire some rules.



More information about the jboss-svn-commits mailing list