[jboss-svn-commits] JBL Code SVN: r29862 - in labs/jbossrules/trunk/drools-vsm/src: main/java/org/drools/vsm/mina and 2 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Oct 28 17:33:27 EDT 2009
Author: mark.proctor at jboss.com
Date: 2009-10-28 17:33:27 -0400 (Wed, 28 Oct 2009)
New Revision: 29862
Added:
labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/ClientGenericMessageReceiver.java
labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/mina/ClientGenericMessageReceiverImpl.java
Modified:
labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/mina/MinaIoHandler.java
labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/rio/RioIoHandler.java
labs/jbossrules/trunk/drools-vsm/src/test/java/org/drools/vsm/ServiceManagerRioRemoteTest.java
Log:
JBRULES-2269 Virtual Service Manager
-rio now uses GenericIoWriter
Added: labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/ClientGenericMessageReceiver.java
===================================================================
--- labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/ClientGenericMessageReceiver.java (rev 0)
+++ labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/ClientGenericMessageReceiver.java 2009-10-28 21:33:27 UTC (rev 29862)
@@ -0,0 +1,13 @@
+package org.drools.vsm;
+
+import org.drools.vsm.mina.MinaIoWriter;
+
+public interface ClientGenericMessageReceiver {
+
+ public abstract void addResponseHandler(int id,
+ MessageResponseHandler responseHandler);
+
+ public abstract void messageReceived(GenericIoWriter writer,
+ Message msg) throws Exception;
+
+}
\ No newline at end of file
Added: labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/mina/ClientGenericMessageReceiverImpl.java
===================================================================
--- labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/mina/ClientGenericMessageReceiverImpl.java (rev 0)
+++ labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/mina/ClientGenericMessageReceiverImpl.java 2009-10-28 21:33:27 UTC (rev 29862)
@@ -0,0 +1,63 @@
+/**
+ *
+ */
+package org.drools.vsm.mina;
+
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
+
+import org.drools.SystemEventListener;
+import org.drools.vsm.ClientGenericMessageReceiver;
+import org.drools.vsm.GenericIoWriter;
+import org.drools.vsm.GenericMessageHandler;
+import org.drools.vsm.Message;
+import org.drools.vsm.MessageResponseHandler;
+
+public class ClientGenericMessageReceiverImpl implements ClientGenericMessageReceiver {
+ protected Map<Integer, MessageResponseHandler> responseHandlers;
+
+ private GenericMessageHandler handler;
+
+ private final SystemEventListener systemEventListener;
+
+ public ClientGenericMessageReceiverImpl(GenericMessageHandler handler,
+ SystemEventListener systemEventListener) {
+ this.handler = handler;
+ this.responseHandlers = new ConcurrentHashMap<Integer, MessageResponseHandler>();;
+ this.systemEventListener = systemEventListener;
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.vsm.mina.ClientGenericMessageReceiver#addResponseHandler(int, org.drools.vsm.MessageResponseHandler)
+ */
+ public void addResponseHandler(int id,
+ MessageResponseHandler responseHandler) {
+ this.responseHandlers.put( id,
+ responseHandler );
+ }
+
+ /* (non-Javadoc)
+ * @see org.drools.vsm.mina.ClientGenericMessageReceiver#messageReceived(org.drools.vsm.mina.MinaIoWriter, org.drools.vsm.Message)
+ */
+ public void messageReceived(GenericIoWriter writer,
+ Message msg) throws Exception {
+
+ systemEventListener.debug( "Message receieved : " + msg );
+
+ MessageResponseHandler responseHandler = (MessageResponseHandler) responseHandlers.remove( msg.getResponseId() );
+
+ if ( responseHandler != null ) {
+ Object payload = msg.getPayload();
+ if ( payload != null && payload instanceof RuntimeException ) {
+ responseHandler.setError( (RuntimeException) payload );
+ } else {
+ responseHandler.receive( msg );
+ }
+ } else if ( handler != null ) {
+ this.handler.messageReceived( writer,
+ msg );
+ } else {
+ throw new RuntimeException( "Unable to process Message" );
+ }
+ }
+}
\ No newline at end of file
Modified: labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/mina/MinaIoHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/mina/MinaIoHandler.java 2009-10-28 21:06:33 UTC (rev 29861)
+++ labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/mina/MinaIoHandler.java 2009-10-28 21:33:27 UTC (rev 29862)
@@ -1,26 +1,23 @@
package org.drools.vsm.mina;
-import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
import org.apache.mina.core.service.IoHandlerAdapter;
import org.apache.mina.core.session.IdleStatus;
import org.apache.mina.core.session.IoSession;
import org.drools.SystemEventListener;
+import org.drools.vsm.ClientGenericMessageReceiver;
import org.drools.vsm.GenericMessageHandler;
import org.drools.vsm.Message;
import org.drools.vsm.MessageResponseHandler;
public class MinaIoHandler extends IoHandlerAdapter {
- protected Map<Integer, MessageResponseHandler> responseHandlers;
-
- private GenericMessageHandler handler;
-
/**
* Listener used for logging
*/
- private final SystemEventListener systemEventListener;
+ private final SystemEventListener systemEventListener;
+ private ClientGenericMessageReceiver clientMessageReceiver;
+
public MinaIoHandler(SystemEventListener systemEventListener) {
this( systemEventListener,
null );
@@ -30,15 +27,15 @@
public MinaIoHandler(SystemEventListener systemEventListener,
GenericMessageHandler handler) {
this.systemEventListener = systemEventListener;
- this.responseHandlers = new ConcurrentHashMap<Integer, MessageResponseHandler>();
- this.handler = handler;
+ this.clientMessageReceiver = new ClientGenericMessageReceiverImpl( handler,
+ systemEventListener );
}
public void addResponseHandler(int id,
MessageResponseHandler responseHandler) {
- this.responseHandlers.put( id,
- responseHandler );
+ this.clientMessageReceiver.addResponseHandler( id,
+ responseHandler );
}
public void exceptionCaught(IoSession session,
@@ -50,24 +47,8 @@
public void messageReceived(IoSession session,
Object object) throws Exception {
Message msg = (Message) object;
-
- systemEventListener.debug( "Message receieved : " + msg );
-
- MessageResponseHandler responseHandler = (MessageResponseHandler) responseHandlers.remove( msg.getResponseId() );
-
- if ( responseHandler != null ) {
- Object payload = msg.getPayload();
- if ( payload != null && payload instanceof RuntimeException ) {
- responseHandler.setError( (RuntimeException) payload );
- } else {
- responseHandler.receive( msg );
- }
- } else if ( handler != null ) {
- this.handler.messageReceived( new MinaIoWriter( session ),
- (Message) object );
- } else {
- throw new RuntimeException( "Unable to process Message" );
- }
+ clientMessageReceiver.messageReceived( new MinaIoWriter( session ),
+ msg );
}
@Override
Modified: labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/rio/RioIoHandler.java
===================================================================
--- labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/rio/RioIoHandler.java 2009-10-28 21:06:33 UTC (rev 29861)
+++ labs/jbossrules/trunk/drools-vsm/src/main/java/org/drools/vsm/rio/RioIoHandler.java 2009-10-28 21:33:27 UTC (rev 29862)
@@ -9,12 +9,14 @@
import org.drools.vsm.GenericMessageHandler;
import org.drools.vsm.Message;
import org.drools.vsm.MessageResponseHandler;
+import org.drools.vsm.mina.ClientGenericMessageReceiverImpl;
public class RioIoHandler {
protected Map<Integer, MessageResponseHandler> responseHandlers;
+
+ private ClientGenericMessageReceiverImpl clientMessageReceiver;
+
- private GenericMessageHandler handler;
-
/**
* Listener used for logging
*/
@@ -29,15 +31,14 @@
public RioIoHandler(SystemEventListener systemEventListener,
GenericMessageHandler handler) {
this.systemEventListener = systemEventListener;
- this.responseHandlers = new ConcurrentHashMap<Integer, MessageResponseHandler>();
- this.handler = handler;
+ this.clientMessageReceiver = new ClientGenericMessageReceiverImpl( handler,
+ systemEventListener );
}
public void addResponseHandler(int id,
MessageResponseHandler responseHandler) {
- this.responseHandlers.put( id,
- responseHandler );
+ this.clientMessageReceiver.addResponseHandler( id, responseHandler );
}
@@ -45,23 +46,7 @@
public void messageReceived(SessionService sessionService, Object object) throws Exception {
Message msg = (Message) object;
- systemEventListener.debug( "Message receieved : " + msg );
-
- MessageResponseHandler responseHandler = (MessageResponseHandler) responseHandlers.remove( msg.getResponseId() );
-
- if ( responseHandler != null ) {
- Object payload = msg.getPayload();
- if ( payload != null && payload instanceof RuntimeException ) {
- responseHandler.setError( (RuntimeException) payload );
- } else {
- responseHandler.receive( msg );
- }
- } else if ( handler != null ) {
- this.handler.messageReceived( new RioIoWriter( sessionService ),
- (Message) object );
- } else {
- throw new RuntimeException( "Unable to process Message" );
- }
+ this.clientMessageReceiver.messageReceived( new RioIoWriter( sessionService ), msg );
}
Modified: labs/jbossrules/trunk/drools-vsm/src/test/java/org/drools/vsm/ServiceManagerRioRemoteTest.java
===================================================================
--- labs/jbossrules/trunk/drools-vsm/src/test/java/org/drools/vsm/ServiceManagerRioRemoteTest.java 2009-10-28 21:06:33 UTC (rev 29861)
+++ labs/jbossrules/trunk/drools-vsm/src/test/java/org/drools/vsm/ServiceManagerRioRemoteTest.java 2009-10-28 21:33:27 UTC (rev 29862)
@@ -13,10 +13,7 @@
ServiceManagerData serverData = new ServiceManagerData();
-
-
-
-
+
//setup Server
RioServer rioServer = new RioServer();
rioServer.start();
More information about the jboss-svn-commits
mailing list