[jboss-cvs] JBossRemoting/src/tests/org/jboss/test/remoting/shutdown ...

Ron Sigal ron_sigal at yahoo.com
Tue Nov 27 05:01:20 EST 2007


  User: rsigal  
  Date: 07/11/27 05:01:20

  Modified:    src/tests/org/jboss/test/remoting/shutdown     Tag:
                        remoting_2_x OpenClient.java
                        ShutdownTestServer.java ShutdownTestParent.java
                        AbstractClient.java
  Log:
  JBREM-807, JBREM-821: Added facility for allowing ShutdownTestParent to wait on readiness of client and server tasks.
  
  Revision  Changes    Path
  No                   revision
  
  
  No                   revision
  
  
  1.1.2.2   +2 -1      JBossRemoting/src/tests/org/jboss/test/remoting/shutdown/Attic/OpenClient.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: OpenClient.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossRemoting/src/tests/org/jboss/test/remoting/shutdown/Attic/OpenClient.java,v
  retrieving revision 1.1.2.1
  retrieving revision 1.1.2.2
  diff -u -b -r1.1.2.1 -r1.1.2.2
  --- OpenClient.java	12 Nov 2007 06:52:17 -0000	1.1.2.1
  +++ OpenClient.java	27 Nov 2007 10:01:20 -0000	1.1.2.2
  @@ -33,7 +33,7 @@
   
   /** 
    * @author <a href="ron.sigal at jboss.com">Ron Sigal</a>
  - * @version $Revision: 1.1.2.1 $
  + * @version $Revision: 1.1.2.2 $
    * <p>
    * Copyright Jan 19, 2007
    * </p>
  @@ -71,6 +71,7 @@
            client = new Client(locator, clientConfig);
            client.connect();
            log.info("client connected");
  +         log.info("READY");
            
            for (int i = 0; i < 5; i++)
            {
  
  
  
  1.1.2.8   +2 -1      JBossRemoting/src/tests/org/jboss/test/remoting/shutdown/ShutdownTestServer.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ShutdownTestServer.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossRemoting/src/tests/org/jboss/test/remoting/shutdown/ShutdownTestServer.java,v
  retrieving revision 1.1.2.7
  retrieving revision 1.1.2.8
  diff -u -b -r1.1.2.7 -r1.1.2.8
  --- ShutdownTestServer.java	15 Nov 2007 03:24:07 -0000	1.1.2.7
  +++ ShutdownTestServer.java	27 Nov 2007 10:01:20 -0000	1.1.2.8
  @@ -47,7 +47,7 @@
    * connection listener.
    * 
    * @author <a href="ron.sigal at jboss.com">Ron Sigal</a>
  - * @version $Revision: 1.1.2.7 $
  + * @version $Revision: 1.1.2.8 $
    * <p>
    * Copyright Jan 19, 2007
    * </p>
  @@ -84,6 +84,7 @@
         connector.addConnectionListener(new TestListener());
         connector.start();
         log.info("server started at: " + locatorURI);
  +      log.info("READY");
      }
      
      
  
  
  
  1.1.2.9   +63 -9     JBossRemoting/src/tests/org/jboss/test/remoting/shutdown/ShutdownTestParent.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: ShutdownTestParent.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossRemoting/src/tests/org/jboss/test/remoting/shutdown/ShutdownTestParent.java,v
  retrieving revision 1.1.2.8
  retrieving revision 1.1.2.9
  diff -u -b -r1.1.2.8 -r1.1.2.9
  --- ShutdownTestParent.java	22 Nov 2007 03:45:04 -0000	1.1.2.8
  +++ ShutdownTestParent.java	27 Nov 2007 10:01:20 -0000	1.1.2.9
  @@ -43,7 +43,7 @@
    * (http://jira.jboss.com/jira/browse/JBREM-674)
    * 
    * @author <a href="ron.sigal at jboss.com">Ron Sigal</a>
  - * @version $Revision: 1.1.2.8 $
  + * @version $Revision: 1.1.2.9 $
    * <p>
    * Copyright Jan 19, 2007
    * </p>
  @@ -91,11 +91,20 @@
         serverCommand += " " + getServerArgs();
         String clientCommand = command + getHangingClientClassName() + " " + getTransport();
         clientCommand += " " + getClientArgs();
  + 
  +      Executor serverExecutor = new Executor(serverCommand, true);
         log.info("starting server");
  -      new Executor(serverCommand, true).start();
  -      Thread.sleep(10000);
  +      serverExecutor.start();
  +      log.info("waiting on server");
  +      serverExecutor.waitUntilReady();
  +      log.info("server is ready");
  +      
  +      Executor clientExecutor = new Executor(clientCommand, false);
         log.info("starting client");
  -      new Executor(clientCommand, false).start();
  +      clientExecutor.start();
  +      log.info("waiting on client");
  +      clientExecutor.waitUntilReady();
  +      log.info("client is ready");
         Thread.sleep(15000);
         log.info("testing client");
         assertFalse(clientSuccessful);
  @@ -121,11 +130,20 @@
         serverCommand += " " + getServerArgs();
         String clientCommand = command + getClosingClientClassName() + " " + getTransport();
         clientCommand += " " + getClientArgs();
  +      
  +      Executor serverExecutor = new Executor(serverCommand, true);
         log.info("starting server");
  -      new Executor(serverCommand, true).start();
  -      Thread.sleep(10000);
  +      serverExecutor.start();
  +      log.info("waiting on server");
  +      serverExecutor.waitUntilReady();
  +      log.info("server is ready");
  +      
  +      Executor clientExecutor = new Executor(clientCommand, false);
         log.info("starting client");
  -      new Executor(clientCommand, false).start();
  +      clientExecutor.start();
  +      log.info("waiting on client");
  +      clientExecutor.waitUntilReady();
  +      log.info("client is ready");
         Thread.sleep(15000);
         log.info("testing client");
         assertTrue(clientSuccessful);
  @@ -150,12 +168,20 @@
         serverCommand += " " + getServerArgs();
         String clientCommand = command + OpenClient.class.getName() + " " + getTransport();
         clientCommand += " " + getClientArgs();
  +      
  +      Executor serverExecutor = new Executor(serverCommand, true);
         log.info("starting server");
  -      new Executor(serverCommand, true).start();
  -      Thread.sleep(10000);
  +      serverExecutor.start();
  +      log.info("waiting on server");
  +      serverExecutor.waitUntilReady();
  +      log.info("server is ready");
  +      
         Executor clientExecutor = new Executor(clientCommand, false);
         log.info("starting client");
         clientExecutor.start();
  +      log.info("waiting on client");
  +      clientExecutor.waitUntilReady();
  +      log.info("client is ready");
         Thread.sleep(40000);
         log.info("testing client");
         assertFalse(clientSuccessful);
  @@ -205,6 +231,8 @@
         private boolean server;
         private boolean successful;
         private Process process;
  +      private boolean ready;
  +      private Object lock = new Object();
         
         public Executor(String command, boolean server)
         {
  @@ -265,6 +293,15 @@
                              while((stdOut = inStream.readLine()) != null)
                              {
                                 System.out.println(stdOut);
  +                              if (stdOut.indexOf("READY") > -1)
  +                              {
  +                                 log.info("READY");
  +                                 synchronized (lock)
  +                                 {
  +                                    ready = true;
  +                                    lock.notify();
  +                                 }
  +                              }
                              }
                           }
                           catch(IOException e)
  @@ -290,6 +327,23 @@
            }.start();
         }
           
  +      public void waitUntilReady()
  +      {
  +         synchronized (lock)
  +         {
  +            while (!ready)
  +            {
  +               try
  +               {
  +                  lock.wait();
  +               }
  +               catch (InterruptedException e)
  +               {
  +               }
  +            }
  +         }
  +      }
  +        
         public void destroy()
         {
            process.destroy();
  
  
  
  1.1.2.10  +2 -1      JBossRemoting/src/tests/org/jboss/test/remoting/shutdown/AbstractClient.java
  
  (In the diff below, changes in quantity of whitespace are not shown.)
  
  Index: AbstractClient.java
  ===================================================================
  RCS file: /cvsroot/jboss/JBossRemoting/src/tests/org/jboss/test/remoting/shutdown/AbstractClient.java,v
  retrieving revision 1.1.2.9
  retrieving revision 1.1.2.10
  diff -u -b -r1.1.2.9 -r1.1.2.10
  --- AbstractClient.java	13 Nov 2007 08:50:01 -0000	1.1.2.9
  +++ AbstractClient.java	27 Nov 2007 10:01:20 -0000	1.1.2.10
  @@ -39,7 +39,7 @@
   
   /** 
    * @author <a href="ron.sigal at jboss.com">Ron Sigal</a>
  - * @version $Revision: 1.1.2.9 $
  + * @version $Revision: 1.1.2.10 $
    * <p>
    * Copyright Jan 19, 2007
    * </p>
  @@ -86,6 +86,7 @@
            Client client = new Client(locator, clientConfig);
            client.connect();
            log.info("client connected");
  +         log.info("READY");
            ConnectionListener listener = new ShutdownTestServer.TestListener();
            client.addConnectionListener(listener, 1000);
            Integer i = (Integer) client.invoke(new Integer(17));
  
  
  



More information about the jboss-cvs-commits mailing list