[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