summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/TcpConnector.java
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2008-01-07 10:30:13 +0100
committerBenoit Foucher <benoit@zeroc.com>2008-01-07 10:30:13 +0100
commitd9ce265d9766f0d48c6a6c10491be1f782424a2c (patch)
tree62df7123b09ccbcc617c6024c4b30e1bec45f16b /java/src/IceInternal/TcpConnector.java
parentFixed IceBox/configuration test failure when run with --protocol=ssl (diff)
downloadice-d9ce265d9766f0d48c6a6c10491be1f782424a2c.tar.bz2
ice-d9ce265d9766f0d48c6a6c10491be1f782424a2c.tar.xz
ice-d9ce265d9766f0d48c6a6c10491be1f782424a2c.zip
Fixed bug 2304
Diffstat (limited to 'java/src/IceInternal/TcpConnector.java')
-rw-r--r--java/src/IceInternal/TcpConnector.java28
1 files changed, 20 insertions, 8 deletions
diff --git a/java/src/IceInternal/TcpConnector.java b/java/src/IceInternal/TcpConnector.java
index ab2a2a877e3..e42057940bb 100644
--- a/java/src/IceInternal/TcpConnector.java
+++ b/java/src/IceInternal/TcpConnector.java
@@ -20,19 +20,31 @@ final class TcpConnector implements Connector, java.lang.Comparable
_logger.trace(_traceLevels.networkCat, s);
}
- java.nio.channels.SocketChannel fd = Network.createTcpSocket();
- Network.setBlock(fd, false);
- Network.setTcpBufSize(fd, _instance.initializationData().properties, _logger);
- boolean connected = Network.doConnect(fd, _addr, timeout);
- if(connected)
+ try
+ {
+ java.nio.channels.SocketChannel fd = Network.createTcpSocket();
+ Network.setBlock(fd, false);
+ Network.setTcpBufSize(fd, _instance.initializationData().properties, _logger);
+ boolean connected = Network.doConnect(fd, _addr, timeout);
+ if(connected)
+ {
+ if(_traceLevels.network >= 1)
+ {
+ String s = "tcp connection established\n" + Network.fdToString(fd);
+ _logger.trace(_traceLevels.networkCat, s);
+ }
+ }
+ return new TcpTransceiver(_instance, fd, connected);
+ }
+ catch(Ice.LocalException ex)
{
- if(_traceLevels.network >= 1)
+ if(_traceLevels.network >= 2)
{
- String s = "tcp connection established\n" + Network.fdToString(fd);
+ String s = "failed to establish tcp connection to " + toString() + "\n" + ex;
_logger.trace(_traceLevels.networkCat, s);
}
+ throw ex;
}
- return new TcpTransceiver(_instance, fd, connected);
}
public short