[jboss-cvs] JBoss Messaging SVN: r1476 - branches/Branch_HTTP_Experiment/src/main/org/jboss/jms/client/remoting

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Tue Oct 17 02:45:03 EDT 2006


Author: ron_sigal
Date: 2006-10-17 02:45:02 -0400 (Tue, 17 Oct 2006)
New Revision: 1476

Modified:
   branches/Branch_HTTP_Experiment/src/main/org/jboss/jms/client/remoting/CallbackManager.java
Log:
JBMESSAGING-207:  Changed from a ServerInvocationHandler to an InvokerCallbackHandler.

Modified: branches/Branch_HTTP_Experiment/src/main/org/jboss/jms/client/remoting/CallbackManager.java
===================================================================
--- branches/Branch_HTTP_Experiment/src/main/org/jboss/jms/client/remoting/CallbackManager.java	2006-10-16 22:33:27 UTC (rev 1475)
+++ branches/Branch_HTTP_Experiment/src/main/org/jboss/jms/client/remoting/CallbackManager.java	2006-10-17 06:45:02 UTC (rev 1476)
@@ -21,16 +21,15 @@
   */
 package org.jboss.jms.client.remoting;
 
+import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 
-import javax.management.MBeanServer;
-
 import org.jboss.jms.server.endpoint.ClientDelivery;
 import org.jboss.jms.server.remoting.MessagingMarshallable;
-import org.jboss.remoting.InvocationRequest;
-import org.jboss.remoting.ServerInvocationHandler;
-import org.jboss.remoting.ServerInvoker;
+import org.jboss.logging.Logger;
+import org.jboss.remoting.callback.Callback;
+import org.jboss.remoting.callback.HandleCallbackException;
 import org.jboss.remoting.callback.InvokerCallbackHandler;
 
 import EDU.oswego.cs.dl.util.concurrent.ConcurrentReaderHashMap;
@@ -47,10 +46,12 @@
  *
  * CallbackManager.java,v 1.1 2006/02/01 17:38:30 timfox Exp
  */
-public class CallbackManager implements ServerInvocationHandler
+public class CallbackManager implements InvokerCallbackHandler
 {
-   protected Map callbackHandlers;
-
+   protected static final Logger log = Logger.getLogger(CallbackManager.class);
+   protected static CallbackManager theManager;
+   protected Map callbackHandlers;  
+   
    public CallbackManager()
    {
       callbackHandlers = new ConcurrentReaderHashMap();
@@ -82,21 +83,34 @@
       
       return new Long(lookup);
    }
-   
-   public void addListener(InvokerCallbackHandler arg0)
-   { 
-   }
 
-   public Object invoke(InvocationRequest ir) throws Throwable
+   public void handleCallback(Callback callback) throws HandleCallbackException
    {
-      MessagingMarshallable mm = (MessagingMarshallable)ir.getParameter();
+
+    log.info("callback.getParameter(): " + callback.getParameter());
+    if (callback.getParameter() instanceof MessagingMarshallable)
+    {
+       MessagingMarshallable mm = (MessagingMarshallable) callback.getParameter();
+       if (mm.getLoad() instanceof ClientDelivery)
+       {
+          ClientDelivery cd = (ClientDelivery) mm.getLoad();
+          List list = cd.getMessages();
+          Iterator it2 = list.listIterator();
+          while (it2.hasNext())
+          {
+             log.info("handling callback [" + cd.getConsumerId() + ", " + cd.getServerId() + "]: " + it2.next());
+          }
+       }
+    }
       
+      MessagingMarshallable mm = (MessagingMarshallable)callback.getParameter();
+      
       ClientDelivery dr = (ClientDelivery)mm.getLoad();
-        
+
       Long lookup = calcLookup(dr.getServerId(), dr.getConsumerId());
-         
+      
       List msgs = dr.getMessages();
-
+      
       MessageCallbackHandler handler =
          (MessageCallbackHandler)callbackHandlers.get(lookup);
       
@@ -105,19 +119,6 @@
          throw new IllegalStateException("Cannot find handler for consumer: " + dr.getConsumerId() +  " and server " + dr.getServerId());
       }
       
-      return new MessagingMarshallable(mm.getVersion(), handler.handleMessage(msgs));
+      handler.handleMessage(msgs);
    }
-
-   public void removeListener(InvokerCallbackHandler arg0)
-   {
-   }
-
-   public void setInvoker(ServerInvoker arg0)
-   { 
-   }
-
-   public void setMBeanServer(MBeanServer arg0)
-   {
-   }
-
 }




More information about the jboss-cvs-commits mailing list