You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mina.apache.org by tr...@apache.org on 2007/04/18 10:49:58 UTC
svn commit: r529922 - in /mina/trunk:
core/src/main/java/org/apache/mina/common/
core/src/main/java/org/apache/mina/common/support/
core/src/main/java/org/apache/mina/handler/support/
core/src/test/java/org/apache/mina/common/support/ core/src/test/jav...
Author: trustin
Date: Wed Apr 18 01:49:56 2007
New Revision: 529922
URL: http://svn.apache.org/viewvc?view=rev&rev=529922
Log:
Resolved issue: DIRMINA-360 (Provide interruptable wait methods in IoFuture.)
* Added IoFuture.await(...) and IoFuture.awaitUninterruptibly(...)
* Deprecated IoFuture.join(...)
Modified:
mina/trunk/core/src/main/java/org/apache/mina/common/DefaultWriteRequest.java
mina/trunk/core/src/main/java/org/apache/mina/common/IoFuture.java
mina/trunk/core/src/main/java/org/apache/mina/common/support/DefaultIoFuture.java
mina/trunk/core/src/main/java/org/apache/mina/handler/support/IoSessionOutputStream.java
mina/trunk/core/src/test/java/org/apache/mina/common/support/FutureTest.java
mina/trunk/core/src/test/java/org/apache/mina/filter/StreamWriteFilterTest.java
mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractConnectorTest.java
mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractTrafficControlTest.java
mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramConfigTest.java
mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramRecyclerTest.java
mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/SocketBindTest.java
mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeBindTest.java
mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeEventOrderTest.java
mina/trunk/example/src/main/java/org/apache/mina/example/chat/client/ChatClientSupport.java
mina/trunk/example/src/main/java/org/apache/mina/example/httpserver/codec/ServerHandler.java
mina/trunk/example/src/main/java/org/apache/mina/example/sumup/Client.java
mina/trunk/example/src/main/java/org/apache/mina/example/tennis/Main.java
mina/trunk/example/src/test/java/org/apache/mina/example/echoserver/ConnectorTest.java
mina/trunk/integration-jmx/src/main/java/org/apache/mina/integration/jmx/IoSessionManager.java
Modified: mina/trunk/core/src/main/java/org/apache/mina/common/DefaultWriteRequest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/common/DefaultWriteRequest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/common/DefaultWriteRequest.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/common/DefaultWriteRequest.java Wed Apr 18 01:49:56 2007
@@ -20,6 +20,7 @@
package org.apache.mina.common;
import java.net.SocketAddress;
+import java.util.concurrent.TimeUnit;
/**
* The default implementation of {@link WriteRequest}.
@@ -67,6 +68,28 @@
public void removeListener( IoFutureListener listener )
{
throw new IllegalStateException( "You can't add a listener to a dummy future." );
+ }
+
+ public void await() throws InterruptedException {
+ }
+
+ public boolean await(long timeout, TimeUnit unit) throws InterruptedException {
+ return true;
+ }
+
+ public boolean await(long timeoutMillis) throws InterruptedException {
+ return true;
+ }
+
+ public void awaitUninterruptibly() {
+ }
+
+ public boolean awaitUninterruptibly(long timeout, TimeUnit unit) {
+ return true;
+ }
+
+ public boolean awaitUninterruptibly(long timeoutMillis) {
+ return true;
}
};
Modified: mina/trunk/core/src/main/java/org/apache/mina/common/IoFuture.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/common/IoFuture.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/common/IoFuture.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/common/IoFuture.java Wed Apr 18 01:49:56 2007
@@ -19,6 +19,8 @@
*/
package org.apache.mina.common;
+import java.util.concurrent.TimeUnit;
+
/**
* Represents the result of an ashynchronous I/O operation.
@@ -36,14 +38,54 @@
/**
* Wait for the asynchronous operation to end.
*/
- void join();
+ void await() throws InterruptedException;
+
+ /**
+ * Wait for the asynchronous operation to end with the specified timeout.
+ *
+ * @return <tt>true</tt> if the operation is finished.
+ */
+ boolean await( long timeout, TimeUnit unit ) throws InterruptedException;
/**
* Wait for the asynchronous operation to end with the specified timeout.
*
* @return <tt>true</tt> if the operation is finished.
*/
- boolean join( long timeoutInMillis );
+ boolean await( long timeoutMillis ) throws InterruptedException;
+
+ /**
+ * Wait for the asynchronous operation to end uninterruptibly.
+ */
+ void awaitUninterruptibly();
+
+ /**
+ * Wait for the asynchronous operation to end with the specified timeout
+ * uninterruptibly.
+ *
+ * @return <tt>true</tt> if the operation is finished.
+ */
+ boolean awaitUninterruptibly( long timeout, TimeUnit unit );
+
+ /**
+ * Wait for the asynchronous operation to end with the specified timeout
+ * uninterruptibly.
+ *
+ * @return <tt>true</tt> if the operation is finished.
+ */
+ boolean awaitUninterruptibly( long timeoutMillis );
+
+ /**
+ * @deprecated Replaced with {@link #awaitUninterruptibly()}.
+ */
+ @Deprecated
+ void join();
+
+ /**
+ * @deprecated Replaced with {@link #awaitUninterruptibly(long)}.
+ */
+ @Deprecated
+ boolean join(long timeoutMillis);
/**
* Returns if the asynchronous operation is finished.
Modified: mina/trunk/core/src/main/java/org/apache/mina/common/support/DefaultIoFuture.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/common/support/DefaultIoFuture.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/common/support/DefaultIoFuture.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/common/support/DefaultIoFuture.java Wed Apr 18 01:49:56 2007
@@ -21,6 +21,7 @@
import java.util.ArrayList;
import java.util.List;
+import java.util.concurrent.TimeUnit;
import org.apache.mina.common.IoFuture;
import org.apache.mina.common.IoFutureListener;
@@ -56,7 +57,40 @@
return session;
}
- public void join()
+ public void join() {
+ awaitUninterruptibly();
+ }
+
+ public boolean join(long timeoutMillis) {
+ return awaitUninterruptibly(timeoutMillis);
+ }
+
+ public void await() throws InterruptedException {
+ synchronized( lock )
+ {
+ while( !ready )
+ {
+ lock.wait();
+ }
+ }
+ }
+
+ public boolean await(long timeout, TimeUnit unit) throws InterruptedException {
+ return await(unit.toMillis(timeout));
+ }
+
+ public boolean await(long timeoutMillis) throws InterruptedException {
+ synchronized( lock )
+ {
+ if( !ready )
+ {
+ lock.wait(timeoutMillis);
+ }
+ return ready;
+ }
+ }
+
+ public void awaitUninterruptibly()
{
synchronized( lock )
{
@@ -72,12 +106,16 @@
}
}
}
+
+ public boolean awaitUninterruptibly( long timeout, TimeUnit unit) {
+ return awaitUninterruptibly(unit.toMillis(timeout));
+ }
- public boolean join( long timeoutInMillis )
+ public boolean awaitUninterruptibly( long timeoutMillis )
{
- long startTime = ( timeoutInMillis <= 0 ) ? 0 : System
+ long startTime = ( timeoutMillis <= 0 ) ? 0 : System
.currentTimeMillis();
- long waitTime = timeoutInMillis;
+ long waitTime = timeoutMillis;
synchronized( lock )
{
@@ -104,7 +142,7 @@
return true;
} else
{
- waitTime = timeoutInMillis - ( System.currentTimeMillis() - startTime );
+ waitTime = timeoutMillis - ( System.currentTimeMillis() - startTime );
if( waitTime <= 0 )
{
return ready;
Modified: mina/trunk/core/src/main/java/org/apache/mina/handler/support/IoSessionOutputStream.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/main/java/org/apache/mina/handler/support/IoSessionOutputStream.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/main/java/org/apache/mina/handler/support/IoSessionOutputStream.java (original)
+++ mina/trunk/core/src/main/java/org/apache/mina/handler/support/IoSessionOutputStream.java Wed Apr 18 01:49:56 2007
@@ -50,7 +50,7 @@
try {
flush();
} finally {
- session.close().join();
+ session.close().awaitUninterruptibly();
}
}
@@ -92,7 +92,7 @@
return;
}
- lastWriteFuture.join();
+ lastWriteFuture.awaitUninterruptibly();
if( !lastWriteFuture.isWritten() )
{
throw new IOException( "The bytes could not be written to the session" );
Modified: mina/trunk/core/src/test/java/org/apache/mina/common/support/FutureTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/common/support/FutureTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/common/support/FutureTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/common/support/FutureTest.java Wed Apr 18 01:49:56 2007
@@ -205,7 +205,7 @@
@Override
public void run()
{
- success = future.join( 10000 );
+ success = future.awaitUninterruptibly( 10000 );
}
}
}
Modified: mina/trunk/core/src/test/java/org/apache/mina/filter/StreamWriteFilterTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/filter/StreamWriteFilterTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/filter/StreamWriteFilterTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/filter/StreamWriteFilterTest.java Wed Apr 18 01:49:56 2007
@@ -28,6 +28,7 @@
import java.util.LinkedList;
import java.util.Queue;
import java.util.Random;
+import java.util.concurrent.TimeUnit;
import junit.framework.TestCase;
@@ -645,6 +646,29 @@
public void removeListener( IoFutureListener listener )
{
+ }
+
+ public void await() throws InterruptedException {
+
+ }
+
+ public boolean await(long timeout, TimeUnit unit) throws InterruptedException {
+ return true;
+ }
+
+ public boolean await(long timeoutMillis) throws InterruptedException {
+ return true;
+ }
+
+ public void awaitUninterruptibly() {
+ }
+
+ public boolean awaitUninterruptibly(long timeout, TimeUnit unit) {
+ return true;
+ }
+
+ public boolean awaitUninterruptibly(long timeoutMillis) {
+ return true;
}
}
}
Modified: mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractConnectorTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractConnectorTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractConnectorTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractConnectorTest.java Wed Apr 18 01:49:56 2007
@@ -76,7 +76,7 @@
}
});
ConnectFuture future = connector.connect( new InetSocketAddress( "localhost", port ) );
- future.join();
+ future.awaitUninterruptibly();
buf.append("3");
future.getSession().close();
Assert.assertEquals( "123", buf.toString() );
@@ -114,7 +114,7 @@
}
});
ConnectFuture future = connector.connect( new InetSocketAddress( "localhost", port ) );
- future.join();
+ future.awaitUninterruptibly();
buf.append("1");
try
{
Modified: mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractTrafficControlTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractTrafficControlTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractTrafficControlTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/transport/AbstractTrafficControlTest.java Wed Apr 18 01:49:56 2007
@@ -75,7 +75,7 @@
public void testSuspendResumeReadWrite() throws Exception
{
ConnectFuture future = connect( port, new ClientIoHandler() );
- future.join();
+ future.awaitUninterruptibly();
IoSession session = future.getSession();
// We wait for the sessionCreated() event is fired becayse we cannot guarentee that
@@ -148,7 +148,7 @@
}
- session.close().join();
+ session.close().awaitUninterruptibly();
}
private void write( IoSession session, String s ) throws Exception
Modified: mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramConfigTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramConfigTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramConfigTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramConfigTest.java Wed Apr 18 01:49:56 2007
@@ -75,10 +75,10 @@
{
connector.setHandler( new IoHandlerAdapter() );
ConnectFuture future = connector.connect( new InetSocketAddress( "localhost", port ) );
- future.join();
+ future.awaitUninterruptibly();
WriteFuture writeFuture = future.getSession().write( ByteBuffer.allocate( 16 ).putInt( 0 ).flip() );
- writeFuture.join();
+ writeFuture.awaitUninterruptibly();
Assert.assertTrue( writeFuture.isWritten() );
future.getSession().close();
Modified: mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramRecyclerTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramRecyclerTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramRecyclerTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/DatagramRecyclerTest.java Wed Apr 18 01:49:56 2007
@@ -64,16 +64,16 @@
{
connector.setHandler( connectorHandler );
ConnectFuture future = connector.connect( new InetSocketAddress( "localhost", port ) );
- future.join();
+ future.awaitUninterruptibly();
// Write whatever to trigger the acceptor.
- future.getSession().write( ByteBuffer.allocate(1) ).join();
+ future.getSession().write( ByteBuffer.allocate(1) ).awaitUninterruptibly();
// Close the client-side connection.
// This doesn't mean that the acceptor-side connection is also closed.
// The lifecycle of the acceptor-side connection is managed by the recycler.
future.getSession().close();
- future.getSession().getCloseFuture().join();
+ future.getSession().getCloseFuture().awaitUninterruptibly();
Assert.assertTrue( future.getSession().getCloseFuture().isClosed() );
// Wait until the acceptor-side connection is closed.
@@ -81,7 +81,7 @@
{
Thread.yield();
}
- acceptorHandler.session.getCloseFuture().join( 3000 );
+ acceptorHandler.session.getCloseFuture().awaitUninterruptibly( 3000 );
// Is it closed?
Assert.assertTrue( acceptorHandler.session.getCloseFuture().isClosed() );
Modified: mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/SocketBindTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/SocketBindTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/SocketBindTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/transport/socket/nio/SocketBindTest.java Wed Apr 18 01:49:56 2007
@@ -68,7 +68,7 @@
for( int i = 0; i < sessions.length; i++ )
{
ConnectFuture future = connector.connect( new InetSocketAddress( "localhost", port ) );
- future.join();
+ future.awaitUninterruptibly();
sessions[ i ] = future.getSession();
Assert.assertTrue( sessions[ i ].isConnected() );
}
Modified: mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeBindTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeBindTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeBindTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeBindTest.java Wed Apr 18 01:49:56 2007
@@ -69,7 +69,7 @@
for( int i = 0; i < sessions.length; i++ )
{
ConnectFuture future = connector.connect( addr );
- future.join();
+ future.awaitUninterruptibly();
sessions[ i ] = future.getSession();
Assert.assertTrue( sessions[ i ].isConnected() );
}
Modified: mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeEventOrderTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeEventOrderTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeEventOrderTest.java (original)
+++ mina/trunk/core/src/test/java/org/apache/mina/transport/vmpipe/VmPipeEventOrderTest.java Wed Apr 18 01:49:56 2007
@@ -88,8 +88,8 @@
ConnectFuture future = connector.connect( new VmPipeAddress( 1 ) );
- future.join();
- future.getSession().getCloseFuture().join();
+ future.awaitUninterruptibly();
+ future.getSession().getCloseFuture().awaitUninterruptibly();
acceptor.unbind();
// sessionClosed() might not be invoked yet
@@ -154,8 +154,8 @@
ConnectFuture future = connector.connect( new VmPipeAddress( 1 ) );
- future.join();
- future.getSession().getCloseFuture().join();
+ future.awaitUninterruptibly();
+ future.getSession().getCloseFuture().awaitUninterruptibly();
acceptor.unbind();
// sessionClosed() might not be invoked yet
Modified: mina/trunk/example/src/main/java/org/apache/mina/example/chat/client/ChatClientSupport.java
URL: http://svn.apache.org/viewvc/mina/trunk/example/src/main/java/org/apache/mina/example/chat/client/ChatClientSupport.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/example/src/main/java/org/apache/mina/example/chat/client/ChatClientSupport.java (original)
+++ mina/trunk/example/src/main/java/org/apache/mina/example/chat/client/ChatClientSupport.java Wed Apr 18 01:49:56 2007
@@ -72,7 +72,7 @@
connector.setHandler( handler );
ConnectFuture future1 = connector.connect( address );
- future1.join();
+ future1.awaitUninterruptibly();
if( ! future1.isConnected() )
{
return false;
@@ -106,7 +106,7 @@
{
session.write( "QUIT" );
// Wait until the chat ends.
- session.getCloseFuture().join();
+ session.getCloseFuture().awaitUninterruptibly();
}
session.close();
}
Modified: mina/trunk/example/src/main/java/org/apache/mina/example/httpserver/codec/ServerHandler.java
URL: http://svn.apache.org/viewvc/mina/trunk/example/src/main/java/org/apache/mina/example/httpserver/codec/ServerHandler.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/example/src/main/java/org/apache/mina/example/httpserver/codec/ServerHandler.java (original)
+++ mina/trunk/example/src/main/java/org/apache/mina/example/httpserver/codec/ServerHandler.java Wed Apr 18 01:49:56 2007
@@ -66,7 +66,7 @@
// HttpResponseMessage.HTTP_STATUS_NOT_FOUND));
if( response != null ) {
- session.write( response ).join();
+ session.write( response ).awaitUninterruptibly();
}
}
Modified: mina/trunk/example/src/main/java/org/apache/mina/example/sumup/Client.java
URL: http://svn.apache.org/viewvc/mina/trunk/example/src/main/java/org/apache/mina/example/sumup/Client.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/example/src/main/java/org/apache/mina/example/sumup/Client.java (original)
+++ mina/trunk/example/src/main/java/org/apache/mina/example/sumup/Client.java Wed Apr 18 01:49:56 2007
@@ -90,7 +90,7 @@
{
ConnectFuture future = connector.connect(
new InetSocketAddress( HOSTNAME, PORT ) );
- future.join();
+ future.awaitUninterruptibly();
session = future.getSession();
break;
}
@@ -103,6 +103,6 @@
}
// wait until the summation is done
- session.getCloseFuture().join();
+ session.getCloseFuture().awaitUninterruptibly();
}
}
Modified: mina/trunk/example/src/main/java/org/apache/mina/example/tennis/Main.java
URL: http://svn.apache.org/viewvc/mina/trunk/example/src/main/java/org/apache/mina/example/tennis/Main.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/example/src/main/java/org/apache/mina/example/tennis/Main.java (original)
+++ mina/trunk/example/src/main/java/org/apache/mina/example/tennis/Main.java Wed Apr 18 01:49:56 2007
@@ -57,14 +57,14 @@
VmPipeConnector connector = new VmPipeConnector();
connector.setHandler( new TennisPlayer() );
ConnectFuture future = connector.connect( address );
- future.join();
+ future.awaitUninterruptibly();
IoSession session = future.getSession();
// Send the first ping message
session.write( new TennisBall( 10 ) );
// Wait until the match ends.
- session.getCloseFuture().join();
+ session.getCloseFuture().awaitUninterruptibly();
acceptor.unbind();
}
Modified: mina/trunk/example/src/test/java/org/apache/mina/example/echoserver/ConnectorTest.java
URL: http://svn.apache.org/viewvc/mina/trunk/example/src/test/java/org/apache/mina/example/echoserver/ConnectorTest.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/example/src/test/java/org/apache/mina/example/echoserver/ConnectorTest.java (original)
+++ mina/trunk/example/src/test/java/org/apache/mina/example/echoserver/ConnectorTest.java Wed Apr 18 01:49:56 2007
@@ -106,7 +106,7 @@
connector.setHandler( handler );
ConnectFuture future = connector.connect(
new InetSocketAddress( "localhost", port ) );
- future.join();
+ future.awaitUninterruptibly();
session = future.getSession();
}
else
@@ -121,7 +121,7 @@
ConnectFuture future = connector.connect(
new InetSocketAddress( "localhost", port ),
new InetSocketAddress( clientPort ) );
- future.join();
+ future.awaitUninterruptibly();
session = future.getSession();
break;
}
@@ -143,7 +143,7 @@
// Send closeNotify to test TLS closure if it is TLS connection.
if( useSSL )
{
- connectorSSLFilter.stopSSL( session ).join();
+ connectorSSLFilter.stopSSL( session ).awaitUninterruptibly();
System.out.println( "-------------------------------------------------------------------------------" );
// Test again after we finished TLS session.
@@ -157,7 +157,7 @@
ByteBuffer buf = ByteBuffer.allocate( 1 );
buf.put( ( byte ) '.' );
buf.flip();
- session.write( buf ).join();
+ session.write( buf ).awaitUninterruptibly();
//// Wait for StartTLS response.
waitForResponse( handler, 1 );
@@ -171,7 +171,7 @@
testConnector0( session );
}
- session.close().join();
+ session.close().awaitUninterruptibly();
}
private void testConnector0( IoSession session ) throws InterruptedException
@@ -196,7 +196,7 @@
}
}
- writeFuture.join();
+ writeFuture.awaitUninterruptibly();
waitForResponse( handler, DATA_SIZE * COUNT );
Modified: mina/trunk/integration-jmx/src/main/java/org/apache/mina/integration/jmx/IoSessionManager.java
URL: http://svn.apache.org/viewvc/mina/trunk/integration-jmx/src/main/java/org/apache/mina/integration/jmx/IoSessionManager.java?view=diff&rev=529922&r1=529921&r2=529922
==============================================================================
--- mina/trunk/integration-jmx/src/main/java/org/apache/mina/integration/jmx/IoSessionManager.java (original)
+++ mina/trunk/integration-jmx/src/main/java/org/apache/mina/integration/jmx/IoSessionManager.java Wed Apr 18 01:49:56 2007
@@ -97,7 +97,7 @@
*/
public void close()
{
- session.close().join();
+ session.close().awaitUninterruptibly();
}