diff options
author | Benoit Foucher <benoit@zeroc.com> | 2016-11-25 13:13:22 +0100 |
---|---|---|
committer | Benoit Foucher <benoit@zeroc.com> | 2016-11-25 13:13:22 +0100 |
commit | dcdc32af1fced49d80a8ccd93230e15d91ab45d8 (patch) | |
tree | eb69e2555fbd54496fce8a33f4dd610e1473ff51 /java-compat/src | |
parent | C# IceSSL/configuration log expired certificate exceptions. (diff) | |
download | ice-dcdc32af1fced49d80a8ccd93230e15d91ab45d8.tar.bz2 ice-dcdc32af1fced49d80a8ccd93230e15d91ab45d8.tar.xz ice-dcdc32af1fced49d80a8ccd93230e15d91ab45d8.zip |
Refactored test scripts
Diffstat (limited to 'java-compat/src')
-rw-r--r-- | java-compat/src/Ice/src/main/java/IceInternal/EndpointHostResolver.java | 32 |
1 files changed, 16 insertions, 16 deletions
diff --git a/java-compat/src/Ice/src/main/java/IceInternal/EndpointHostResolver.java b/java-compat/src/Ice/src/main/java/IceInternal/EndpointHostResolver.java index 89cc00f4a3a..d3b88ed87a2 100644 --- a/java-compat/src/Ice/src/main/java/IceInternal/EndpointHostResolver.java +++ b/java-compat/src/Ice/src/main/java/IceInternal/EndpointHostResolver.java @@ -31,7 +31,7 @@ class EndpointHostResolver } } - synchronized void resolve(final String host, final int port, final Ice.EndpointSelectionType selType, + synchronized void resolve(final String host, final int port, final Ice.EndpointSelectionType selType, final IPEndpointI endpoint, final EndpointI_connectors callback) { // @@ -45,8 +45,8 @@ class EndpointHostResolver NetworkProxy networkProxy = _instance.networkProxy(); if(networkProxy == null) { - java.util.List<java.net.InetSocketAddress> addrs = Network.getAddresses(host, port, _protocol, selType, - _preferIPv6, false); + java.util.List<java.net.InetSocketAddress> addrs = + Network.getAddresses(host, port, _protocol, selType, _preferIPv6, false); if(addrs != null) { callback.connectors(endpoint.connectors(addrs, networkProxy)); @@ -87,6 +87,7 @@ class EndpointHostResolver Ice.Instrumentation.ThreadState.ThreadStateInUseForOther); } + Ice.Instrumentation.Observer obsv = observer; try { int protocol = _protocol; @@ -100,19 +101,22 @@ class EndpointHostResolver } } - callback.connectors(endpoint.connectors(Network.getAddresses(host, - port, - protocol, - selType, - _preferIPv6, - true), - networkProxy)); + java.util.List<java.net.InetSocketAddress> addresses = + Network.getAddresses(host, port, protocol, selType, _preferIPv6, true); + if(obsv != null) + { + obsv.detach(); + obsv = null; + } + + callback.connectors(endpoint.connectors(addresses, networkProxy)); } catch(Ice.LocalException ex) { - if(observer != null) + if(obsv != null) { - observer.failed(ex.ice_id()); + obsv.failed(ex.ice_id()); + obsv.detach(); } callback.exception(ex); } @@ -123,10 +127,6 @@ class EndpointHostResolver threadObserver.stateChanged(Ice.Instrumentation.ThreadState.ThreadStateInUseForOther, Ice.Instrumentation.ThreadState.ThreadStateIdle); } - if(observer != null) - { - observer.detach(); - } } } }); |