[jboss-cvs] JBossRemoting/src/tests/org/jboss/test/remoting/lease/socket/multiple ...

Tom Elrod tom.elrod at jboss.com
Thu Sep 14 16:35:27 EDT 2006


  User: telrod  
  Date: 06/09/14 16:35:27

  Added:       src/tests/org/jboss/test/remoting/lease/socket/multiple   
                        SocketLeaseTestCase.java SocketLeaseTestClient.java
                        SocketLeaseTestServer.java
  Log:
  JBREM-596 - tests
  
  Revision  Changes    Path
  1.1      date: 2006/09/14 20:35:27;  author: telrod;  state: Exp;JBossRemoting/src/tests/org/jboss/test/remoting/lease/socket/multiple/SocketLeaseTestCase.java
  
  Index: SocketLeaseTestCase.java
  ===================================================================
  package org.jboss.test.remoting.lease.socket.multiple;
  
  import org.apache.log4j.Level;
  import org.jboss.jrunit.harness.TestDriver;
  
  /**
   * @author <a href="mailto:tom.elrod at jboss.com">Tom Elrod</a>
   */
  public class SocketLeaseTestCase extends TestDriver
  {
     public void declareTestClasses()
     {
        addTestClasses(SocketLeaseTestClient.class.getName(),
                       1,
                       SocketLeaseTestServer.class.getName());
     }
  
     protected Level getTestHarnessLogLevel()
     {
        return Level.DEBUG;
     }
  }
  
  
  
  1.1      date: 2006/09/14 20:35:27;  author: telrod;  state: Exp;JBossRemoting/src/tests/org/jboss/test/remoting/lease/socket/multiple/SocketLeaseTestClient.java
  
  Index: SocketLeaseTestClient.java
  ===================================================================
  package org.jboss.test.remoting.lease.socket.multiple;
  
  import junit.framework.TestCase;
  import org.jboss.remoting.Client;
  import org.jboss.remoting.InvokerLocator;
  import org.jboss.remoting.callback.Callback;
  import org.jboss.remoting.callback.HandleCallbackException;
  import org.jboss.remoting.callback.InvokerCallbackHandler;
  import org.jboss.remoting.transport.Connector;
  
  import java.util.HashMap;
  import java.util.Map;
  
  /**
   * @author <a href="mailto:tom.elrod at jboss.com">Tom Elrod</a>
   */
  public class SocketLeaseTestClient extends TestCase
  {
     // Default locator values
     private static String transport = "socket";
     private static String host = "localhost";
     private static int port = 5400;
  
     private String locatorURI = transport + "://" + host + ":" + port + "/?" + InvokerLocator.CLIENT_LEASE + "=" + "true";
     private String callbackLocatorURI = transport + "://" + host + ":" + (port + 1);
  
     protected String getLocatorUri()
     {
        return locatorURI;
     }
  
     public void testMultipleLeases() throws Throwable
     {
        InvokerLocator locator = new InvokerLocator(getLocatorUri());
        System.out.println("Calling remoting server with locator uri of: " + getLocatorUri());
  
        InvokerLocator callbackLocator = new InvokerLocator(callbackLocatorURI);
        Connector callbackConnector = new Connector(callbackLocator);
        callbackConnector.create();
        callbackConnector.start();
  
        TestCallbackHandler callbackHandler = new TestCallbackHandler();
  
        Map metadata = new HashMap();
        metadata.put("clientName", "test1");
        Client remotingClient1 = new Client(locator, metadata);
        remotingClient1.connect();
  
        remotingClient1.addListener(callbackHandler, callbackLocator);
  
        Object ret = remotingClient1.invoke("test1");
        System.out.println("Response was: " + ret);
  
        Thread.currentThread().sleep(1000);
  
        // now create second client
        Map metadata2 = new HashMap();
        metadata2.put("clientName", "test2");
        Client remotingClient2 =new Client(locator, metadata2);
        remotingClient2.connect();
        remotingClient2.addListener(callbackHandler, callbackLocator);
  
        ret = remotingClient2.invoke("test2");
        System.out.println("Response was: " + ret);
  
        ret = remotingClient1.invoke("test1");
        System.out.println("Response was: " + ret);
  
        Thread.currentThread().sleep(1000);
  
        if(remotingClient1 != null)
        {
           remotingClient1.removeListener(callbackHandler);
           remotingClient1.disconnect();
        }
  
        System.out.println("remoting client 1 disconnected");
  
        //Thread.currentThread().sleep(10000);
        Thread.currentThread().sleep(30000);
  
        ret = remotingClient2.invoke("test2");
        System.out.println("Response was: " + ret);
  
        if(remotingClient2 != null)
        {
           remotingClient2.removeListener(callbackHandler);
           remotingClient2.disconnect();
        }
  
     }
  
     public class TestCallbackHandler implements InvokerCallbackHandler
     {
  
        public void handleCallback(Callback callback) throws HandleCallbackException
        {
           System.out.println("callback: " + callback);
        }
     }
  
  
  }
  
  
  
  1.1      date: 2006/09/14 20:35:27;  author: telrod;  state: Exp;JBossRemoting/src/tests/org/jboss/test/remoting/lease/socket/multiple/SocketLeaseTestServer.java
  
  Index: SocketLeaseTestServer.java
  ===================================================================
  package org.jboss.test.remoting.lease.socket.multiple;
  
  import org.apache.log4j.Level;
  import org.jboss.logging.XLevel;
  import org.jboss.test.remoting.lease.LeaseTestServer;
  
  /**
   * @author <a href="mailto:tom.elrod at jboss.com">Tom Elrod</a>
   */
  public class SocketLeaseTestServer extends LeaseTestServer
  {
     private static String transport = "socket";
  
     protected String getTransport()
     {
        return transport;
     }
  
     public static void main(String[] args)
     {
        org.apache.log4j.BasicConfigurator.configure();
        org.apache.log4j.Category.getRoot().setLevel(Level.INFO);
        org.apache.log4j.Category.getInstance("org.jboss.remoting").setLevel(XLevel.TRACE);
        org.apache.log4j.Category.getInstance("org.jboss.remoting.ServerInvoker").setLevel(XLevel.TRACE);
        org.apache.log4j.Category.getInstance("org.jgroups").setLevel(Level.FATAL);
  
        final LeaseTestServer server = new SocketLeaseTestServer();
        try
        {
           server.setupServer();
           try
           {
              new Thread(new Runnable()
              {
                 public void run()
                 {
                    server.testForError();
                 }
              }).start();
              Thread.currentThread().sleep(60000);
              server.isRunning = false;
           }
           catch (InterruptedException e)
           {
              e.printStackTrace();
           }
           server.tearDown();
        }
        catch (Exception e)
        {
           e.printStackTrace();
        }
     }
  }
  
  
  



More information about the jboss-cvs-commits mailing list