summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/IndirectReference.java
diff options
context:
space:
mode:
authorBenoit Foucher <benoit@zeroc.com>2006-02-14 12:06:57 +0000
committerBenoit Foucher <benoit@zeroc.com>2006-02-14 12:06:57 +0000
commit770b66fc97582743bf045f709feac5c468c9d06d (patch)
treede6f5b22ed6c5a22d072337a647c9d3ac626eaa1 /java/src/IceInternal/IndirectReference.java
parentFixed another race condition in the activator test suite. (diff)
downloadice-770b66fc97582743bf045f709feac5c468c9d06d.tar.bz2
ice-770b66fc97582743bf045f709feac5c468c9d06d.tar.xz
ice-770b66fc97582743bf045f709feac5c468c9d06d.zip
- Added ice_cacheConnection, ice_endpointSelection
- Fixed a bug where connection.close(true) would print a connection warning. - Fixed a bug where ice_newEndpoints would throw a ClassCastException - Added test/Ice/binding test suite.
Diffstat (limited to 'java/src/IceInternal/IndirectReference.java')
-rw-r--r--java/src/IceInternal/IndirectReference.java14
1 files changed, 5 insertions, 9 deletions
diff --git a/java/src/IceInternal/IndirectReference.java b/java/src/IceInternal/IndirectReference.java
index d0c56776594..a1a563240cb 100644
--- a/java/src/IceInternal/IndirectReference.java
+++ b/java/src/IceInternal/IndirectReference.java
@@ -220,20 +220,16 @@ public class IndirectReference extends RoutableReference
{
endpts[i] = endpts[i].connectionId(_connectionId);
}
- EndpointI[] filteredEndpoints = filterEndpoints(endpts);
- if(filteredEndpoints.length == 0)
- {
- Ice.NoEndpointException ex = new Ice.NoEndpointException();
- ex.proxy = toString();
- throw ex;
- }
try
{
- OutgoingConnectionFactory factory = getInstance().outgoingConnectionFactory();
- connection = factory.create(filteredEndpoints, comp);
+ connection = createConnection(endpts, comp);
assert(connection != null);
}
+ catch(Ice.NoEndpointException ex)
+ {
+ throw ex; // No need to retry if there's no endpoints.
+ }
catch(Ice.LocalException ex)
{
if(getRouterInfo() == null)