[jboss-remoting-commits] JBoss Remoting SVN: r5185 - remoting2/branches/2.2/src/tests/org/jboss/test/remoting/transport/web.

jboss-remoting-commits at lists.jboss.org jboss-remoting-commits at lists.jboss.org
Sun May 10 02:42:56 EDT 2009


Author: ron.sigal at jboss.com
Date: 2009-05-10 02:42:56 -0400 (Sun, 10 May 2009)
New Revision: 5185

Modified:
   remoting2/branches/2.2/src/tests/org/jboss/test/remoting/transport/web/WebInvocationHandler.java
Log:
JBREM-1079: Added more cases.

Modified: remoting2/branches/2.2/src/tests/org/jboss/test/remoting/transport/web/WebInvocationHandler.java
===================================================================
--- remoting2/branches/2.2/src/tests/org/jboss/test/remoting/transport/web/WebInvocationHandler.java	2009-05-10 06:42:26 UTC (rev 5184)
+++ remoting2/branches/2.2/src/tests/org/jboss/test/remoting/transport/web/WebInvocationHandler.java	2009-05-10 06:42:56 UTC (rev 5185)
@@ -22,10 +22,15 @@
 
 package org.jboss.test.remoting.transport.web;
 
+import java.util.HashMap;
+import java.util.Map;
+
 import javax.management.MBeanServer;
+
 import org.jboss.remoting.InvocationRequest;
 import org.jboss.remoting.ServerInvocationHandler;
 import org.jboss.remoting.ServerInvoker;
+import org.jboss.remoting.callback.Callback;
 import org.jboss.remoting.callback.InvokerCallbackHandler;
 
 /**
@@ -43,11 +48,29 @@
    public static final String THROW_EXCEPTION_PARAM = "throw_exception";
    public static final String STRING_RETURN_PARAM = "return_string";
    public static final String USER_AGENT_PARAM = "user_agent";
+   public static final String GET_OBJECT_NAME = "getObjectName";
    public static final String HTML_PAGE_RESPONSE = "<html><head><title>Test HTML page</title></head><body>" +
                                                    "<h1>HTTP/Servlet Test HTML page</h1><p>This is a simple page served for test." +
                                                    "<p>Should show up in browser or via invoker client</body></html>";
-
-
+   public static final String SET_CONTENT_TYPE = "setContentType";
+   public static final String CONTENT_TYPE = "test/testContentType";
+   
+   public static final String GET_ADDRESS = "getAddress";
+   public static final String OPEN_CONNECTION = "openConnection";
+   public static final String SEND_CALLBACK = "sendCallback";
+   public static final String COPY = "copy:";
+   public static final int ANSWER = 17;
+   
+   public static final String CHECK_MBEAN_SERVER = "checkMBeanServer";
+   public static final String DEFAULT_DOMAIN = "defaultDomain";
+   
+   protected static String HEADER_RESPONSE_KEY = "responseKey";
+   protected static String HEADER_RESPONSE_VALUE = "responseValue";
+   protected static String RETURN_RESPONSE_HEADER = "returnResponseHeader";
+   
+   private InvokerCallbackHandler callbackHandler;
+   protected ServerInvoker invoker;
+   
    /**
     * called to handle a specific invocation
     *
@@ -90,6 +113,42 @@
          // return user agent found in map
          return invocation.getRequestPayload().get("user-agent");
       }
+      else if (GET_OBJECT_NAME.equals(invocation.getParameter()))
+      {
+         return invoker.getMBeanObjectName();
+      }
+      else if (SET_CONTENT_TYPE.equals(invocation.getParameter()))
+      {
+         Map returnPayload = invocation.getReturnPayload();
+         if (returnPayload == null)
+         {
+            returnPayload = new HashMap();
+            invocation.setReturnPayload(returnPayload);
+         }
+         returnPayload.put("Content-Type", CONTENT_TYPE);
+         return CONTENT_TYPE;
+      }
+      else if (SEND_CALLBACK.equals(invocation.getParameter()))
+      {
+         callbackHandler.handleCallback(new Callback("callback"));
+         return null;
+      }
+      else if (invocation.getParameter() instanceof String && ((String)invocation.getParameter()).startsWith(COPY))
+      {
+         return ((String) invocation.getParameter()).substring(5);
+      }
+      else if (RETURN_RESPONSE_HEADER.equals(invocation.getParameter()))
+      {
+         Map returnPayload = invocation.getReturnPayload();
+         if (returnPayload == null)
+         {
+            returnPayload = new HashMap();
+            invocation.setReturnPayload(returnPayload);
+         }
+         returnPayload.put(HEADER_RESPONSE_KEY, HEADER_RESPONSE_VALUE);
+         System.out.println("returnPayload: " + invocation.getReturnPayload());
+         return invocation.getParameter();
+      }
       else
       {
          return HTML_PAGE_RESPONSE;
@@ -104,7 +163,7 @@
     */
    public void addListener(InvokerCallbackHandler callbackHandler)
    {
-      // NO OP as do not handling callback listeners in this example
+      this.callbackHandler = callbackHandler;
    }
 
    /**
@@ -125,7 +184,6 @@
     */
    public void setMBeanServer(MBeanServer server)
    {
-      // NO OP as do not need reference to MBeanServer for this handler
    }
 
    /**
@@ -135,7 +193,7 @@
     */
    public void setInvoker(ServerInvoker invoker)
    {
-      // NO OP as do not need reference back to the server invoker
+      this.invoker = invoker;
    }
 
 }
\ No newline at end of file




More information about the jboss-remoting-commits mailing list