[jboss-svn-commits] JBL Code SVN: r31158 - in labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm: rio and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Jan 20 09:36:20 EST 2010
Author: salaboy21
Date: 2010-01-20 09:36:19 -0500 (Wed, 20 Jan 2010)
New Revision: 31158
Added:
labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/rio/RioConnector.java
Modified:
labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/grid/KnowledgeBaseGridClient.java
labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/grid/ServiceManagerGridClient.java
Log:
refactoring to use two session into two session services
Modified: labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/grid/KnowledgeBaseGridClient.java
===================================================================
--- labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/grid/KnowledgeBaseGridClient.java 2010-01-20 13:19:27 UTC (rev 31157)
+++ labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/grid/KnowledgeBaseGridClient.java 2010-01-20 14:36:19 UTC (rev 31158)
@@ -171,4 +171,10 @@
// TODO Auto-generated method stub
}
+
+
+ public void setServiceManager(ServiceManagerGridClient serviceManager) {
+ this.serviceManager = serviceManager;
+ }
+
}
Modified: labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/grid/ServiceManagerGridClient.java
===================================================================
--- labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/grid/ServiceManagerGridClient.java 2010-01-20 13:19:27 UTC (rev 31157)
+++ labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/grid/ServiceManagerGridClient.java 2010-01-20 14:36:19 UTC (rev 31158)
@@ -1,6 +1,7 @@
package org.drools.vsm.grid;
import java.rmi.RemoteException;
+import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Properties;
@@ -30,6 +31,7 @@
import org.drools.vsm.Message;
import org.drools.vsm.ServiceManager;
import org.drools.vsm.command.ServiceManagerClientConnectCommand;
+import org.drools.vsm.rio.RioConnector;
public class ServiceManagerGridClient
implements
@@ -173,9 +175,8 @@
Object object = client.write( msg ).getPayload();
- //Here I will use the registry Service
-
+
if ( !(object instanceof FinishedCommand) ) {
throw new RuntimeException( "Response was not correctly ended" );
}
@@ -317,5 +318,23 @@
this.registryService = registryService;
}
+ public void setCurrentSessionService(SessionService sessionService){
+ this.client.setSession(sessionService);
+ }
+
+ public List<SessionService> getSessionServices(){
+// List<SessionService> sessionServices =
+// ((RioConnector)this.client).getSessionServices();
+// List<String> ids = new ArrayList<String>();
+// for(SessionService ss : sessionServices){
+// try {
+// ids.add(ss.getId());
+// } catch (RemoteException ex) {
+// Logger.getLogger(ServiceManagerGridClient.class.getName()).log(Level.SEVERE, null, ex);
+// }
+// }
+// return ids;
+ return ((RioConnector)this.client).getSessionServices();
+ }
}
Copied: labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/rio/RioConnector.java (from rev 31134, labs/jbossrules/branches/salaboy_grid-rio/drools-grid-rio/src/main/java/org/drools/vsm/rio/RioConnector.java)
===================================================================
--- labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/rio/RioConnector.java (rev 0)
+++ labs/jbossrules/branches/salaboy_grid-rio/drools-vsm/src/main/java/org/drools/vsm/rio/RioConnector.java 2010-01-20 14:36:19 UTC (rev 31158)
@@ -0,0 +1,125 @@
+package org.drools.vsm.rio;
+
+import org.drools.vsm.grid.SessionService;
+import java.rmi.RemoteException;
+import java.util.logging.Level;
+import java.util.logging.Logger;
+import java.net.SocketAddress;
+import java.util.List;
+import java.util.concurrent.atomic.AtomicInteger;
+
+import org.drools.SystemEventListener;
+import org.drools.vsm.GenericConnector;
+import org.drools.vsm.Message;
+import org.drools.vsm.MessageResponseHandler;
+
+public class RioConnector
+ implements
+ GenericConnector {
+
+ protected final String name;
+ protected AtomicInteger counter;
+ protected SessionService currentSessionService;
+ protected List<SessionService> sessionServices;
+ protected SocketAddress address;
+ protected SystemEventListener eventListener;
+
+ public RioConnector(String name,
+ SystemEventListener eventListener
+ ) {
+ if ( name == null ) {
+ throw new IllegalArgumentException( "Name can not be null" );
+ }
+ this.name = name;
+ this.counter = new AtomicInteger();
+ this.eventListener = eventListener;
+
+ }
+
+ public RioConnector(String name,
+ SystemEventListener eventListener,
+ List<SessionService> sessionServices
+ ) {
+ if ( name == null ) {
+ throw new IllegalArgumentException( "Name can not be null" );
+ }
+ this.name = name;
+ this.counter = new AtomicInteger();
+ this.eventListener = eventListener;
+ this.sessionServices = sessionServices;
+
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.vsm.mina.Messenger#connect()
+ */
+ public boolean connect() {
+
+ return true;
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.vsm.mina.Messenger#disconnect()
+ */
+ public void disconnect() {
+ //I don't need to be disconected
+ }
+
+ public Message write(Message msg) {
+ if ( currentSessionService != null ) {
+ try {
+
+ Message returnMessage = this.currentSessionService.write( msg );
+ return returnMessage;
+ // ioHandler.messageReceived( sessionService ,
+ // returnMessage );
+
+ } catch ( RemoteException ex ) {
+ Logger.getLogger( RioConnector.class.getName() ).log( Level.SEVERE,
+ null,
+ ex );
+ } catch ( Exception ex ) {
+ Logger.getLogger( RioConnector.class.getName() ).log( Level.SEVERE,
+ null,
+ ex );
+ }
+ }
+ throw new IllegalStateException( "sessionService should not be null" );
+ }
+
+ public void write(Message msg,
+ MessageResponseHandler responseHandler) {
+ throw new UnsupportedOperationException();
+ }
+
+
+ public String getId() {
+ try {
+ return currentSessionService.getId();
+ } catch (RemoteException ex) {
+ Logger.getLogger(RioConnector.class.getName()).log(Level.SEVERE, null, ex);
+ }
+ return null;
+ }
+
+ public SessionService getCurrentSessionService() {
+ return currentSessionService;
+ }
+
+ public List<SessionService> getSessionServices() {
+ return sessionServices;
+ }
+
+
+ public void setSession(Object object) {
+ this.currentSessionService = (SessionService) object;
+ try {
+ System.out.println("Setting session = " + currentSessionService.getId());
+ } catch (RemoteException ex) {
+ Logger.getLogger(RioConnector.class.getName()).log(Level.SEVERE, null, ex);
+ }
+ }
+
+
+
+}
More information about the jboss-svn-commits
mailing list