summaryrefslogtreecommitdiff
path: root/java/src/IceInternal/OutgoingConnectionFactory.java
diff options
context:
space:
mode:
authorMark Spruiell <mes@zeroc.com>2008-01-30 06:15:20 -0800
committerMark Spruiell <mes@zeroc.com>2008-01-30 06:15:20 -0800
commitf3c3029ff651d294a1a0df0e79e72771307310fc (patch)
tree1f061a96f5f46051b6daf45ccbdb63ebd2cdd746 /java/src/IceInternal/OutgoingConnectionFactory.java
parentFixed and moved fixVersion.py/fixCopyright.py (diff)
downloadice-f3c3029ff651d294a1a0df0e79e72771307310fc.tar.bz2
ice-f3c3029ff651d294a1a0df0e79e72771307310fc.tar.xz
ice-f3c3029ff651d294a1a0df0e79e72771307310fc.zip
using Java5 types in Ice core; general cleanup
Diffstat (limited to 'java/src/IceInternal/OutgoingConnectionFactory.java')
-rw-r--r--java/src/IceInternal/OutgoingConnectionFactory.java232
1 files changed, 120 insertions, 112 deletions
diff --git a/java/src/IceInternal/OutgoingConnectionFactory.java b/java/src/IceInternal/OutgoingConnectionFactory.java
index 94f6bc1c078..fec7e825ab0 100644
--- a/java/src/IceInternal/OutgoingConnectionFactory.java
+++ b/java/src/IceInternal/OutgoingConnectionFactory.java
@@ -25,15 +25,15 @@ public final class OutgoingConnectionFactory
return;
}
- java.util.Iterator p = _connections.values().iterator();
+ java.util.Iterator<java.util.List<Ice.ConnectionI> > p = _connections.values().iterator();
while(p.hasNext())
{
- java.util.LinkedList connectionList = (java.util.LinkedList)p.next();
+ java.util.List<Ice.ConnectionI> connectionList = p.next();
- java.util.Iterator q = connectionList.iterator();
+ java.util.Iterator<Ice.ConnectionI> q = connectionList.iterator();
while(q.hasNext())
{
- Ice.ConnectionI connection = (Ice.ConnectionI)q.next();
+ Ice.ConnectionI connection = q.next();
connection.destroy(Ice.ConnectionI.CommunicatorDestroyed);
}
}
@@ -45,7 +45,7 @@ public final class OutgoingConnectionFactory
public void
waitUntilFinished()
{
- java.util.HashMap connections = null;
+ java.util.Map<ConnectorInfo, java.util.List<Ice.ConnectionI> > connections = null;
synchronized(this)
{
@@ -72,22 +72,23 @@ public final class OutgoingConnectionFactory
//
if(_connections != null)
{
- connections = new java.util.HashMap(_connections);
+ connections =
+ new java.util.HashMap<ConnectorInfo, java.util.List<Ice.ConnectionI> >(_connections);
}
}
//
// Now we wait until the destruction of each connection is finished.
//
- java.util.Iterator p = connections.values().iterator();
+ java.util.Iterator<java.util.List<Ice.ConnectionI> > p = connections.values().iterator();
while(p.hasNext())
{
- java.util.LinkedList connectionList = (java.util.LinkedList)p.next();
+ java.util.List<Ice.ConnectionI> connectionList = p.next();
- java.util.Iterator q = connectionList.iterator();
+ java.util.Iterator<Ice.ConnectionI> q = connectionList.iterator();
while(q.hasNext())
{
- Ice.ConnectionI connection = (Ice.ConnectionI)q.next();
+ Ice.ConnectionI connection = q.next();
connection.waitUntilFinished();
}
}
@@ -113,7 +114,7 @@ public final class OutgoingConnectionFactory
//
// Apply the overrides.
//
- java.util.List endpoints = applyOverrides(endpts);
+ java.util.List<EndpointI> endpoints = applyOverrides(endpts);
//
// Try to find a connection to one of the given endpoints.
@@ -130,18 +131,18 @@ public final class OutgoingConnectionFactory
// If we didn't find a connection with the endpoints, we create the connectors
// for the endpoints.
//
- java.util.ArrayList connectors = new java.util.ArrayList();
- java.util.Iterator p = endpoints.iterator();
+ java.util.List<ConnectorInfo> connectors = new java.util.ArrayList<ConnectorInfo>();
+ java.util.Iterator<EndpointI> p = endpoints.iterator();
while(p.hasNext())
{
- EndpointI endpoint = (EndpointI)p.next();
+ EndpointI endpoint = p.next();
//
// Create connectors for the endpoint.
//
try
{
- java.util.List cons = endpoint.connectors();
+ java.util.List<Connector> cons = endpoint.connectors();
assert(cons.size() > 0);
//
@@ -152,10 +153,10 @@ public final class OutgoingConnectionFactory
java.util.Collections.shuffle(cons);
}
- java.util.Iterator q = cons.iterator();
+ java.util.Iterator<Connector> q = cons.iterator();
while(q.hasNext())
{
- connectors.add(new ConnectorInfo((Connector)q.next(), endpoint, tpc));
+ connectors.add(new ConnectorInfo(q.next(), endpoint, tpc));
}
}
catch(Ice.LocalException ex)
@@ -187,10 +188,10 @@ public final class OutgoingConnectionFactory
// Try to establish the connection to the connectors.
//
DefaultsAndOverrides defaultsAndOverrides = _instance.defaultsAndOverrides();
- p = connectors.iterator();
- while(p.hasNext())
+ java.util.Iterator<ConnectorInfo> q = connectors.iterator();
+ while(q.hasNext())
{
- ConnectorInfo ci = (ConnectorInfo)p.next();
+ ConnectorInfo ci = q.next();
try
{
int timeout;
@@ -260,7 +261,7 @@ public final class OutgoingConnectionFactory
//
// Apply the overrides.
//
- java.util.List endpoints = applyOverrides(endpts);
+ java.util.List<EndpointI> endpoints = applyOverrides(endpts);
//
// Try to find a connection to one of the given endpoints.
@@ -327,15 +328,15 @@ public final class OutgoingConnectionFactory
//
endpoint = endpoint.compress(false);
- java.util.Iterator p = _connections.values().iterator();
+ java.util.Iterator<java.util.List<Ice.ConnectionI> > p = _connections.values().iterator();
while(p.hasNext())
{
- java.util.LinkedList connectionList = (java.util.LinkedList)p.next();
-
- java.util.Iterator q = connectionList.iterator();
+ java.util.List<Ice.ConnectionI> connectionList = p.next();
+
+ java.util.Iterator<Ice.ConnectionI> q = connectionList.iterator();
while(q.hasNext())
{
- Ice.ConnectionI connection = (Ice.ConnectionI)q.next();
+ Ice.ConnectionI connection = q.next();
if(connection.endpoint() == endpoint)
{
try
@@ -362,15 +363,15 @@ public final class OutgoingConnectionFactory
return;
}
- java.util.Iterator p = _connections.values().iterator();
+ java.util.Iterator<java.util.List<Ice.ConnectionI> > p = _connections.values().iterator();
while(p.hasNext())
{
- java.util.LinkedList connectionList = (java.util.LinkedList)p.next();
+ java.util.List<Ice.ConnectionI> connectionList = p.next();
- java.util.Iterator q = connectionList.iterator();
+ java.util.Iterator<Ice.ConnectionI> q = connectionList.iterator();
while(q.hasNext())
{
- Ice.ConnectionI connection = (Ice.ConnectionI)q.next();
+ Ice.ConnectionI connection = q.next();
if(connection.getAdapter() == adapter)
{
try
@@ -391,15 +392,15 @@ public final class OutgoingConnectionFactory
public void
flushBatchRequests()
{
- java.util.LinkedList c = new java.util.LinkedList();
+ java.util.List<Ice.ConnectionI> c = new java.util.LinkedList<Ice.ConnectionI>();
synchronized(this)
{
- java.util.Iterator p = _connections.values().iterator();
+ java.util.Iterator<java.util.List<Ice.ConnectionI> > p = _connections.values().iterator();
while(p.hasNext())
{
- java.util.LinkedList connectionList = (java.util.LinkedList)p.next();
- java.util.Iterator q = connectionList.iterator();
+ java.util.List<Ice.ConnectionI> connectionList = p.next();
+ java.util.Iterator<Ice.ConnectionI> q = connectionList.iterator();
while(q.hasNext())
{
c.add(q.next());
@@ -407,10 +408,10 @@ public final class OutgoingConnectionFactory
}
}
- java.util.Iterator p = c.iterator();
+ java.util.Iterator<Ice.ConnectionI> p = c.iterator();
while(p.hasNext())
{
- Ice.ConnectionI conn = (Ice.ConnectionI)p.next();
+ Ice.ConnectionI conn = p.next();
try
{
conn.flushBatchRequests();
@@ -444,11 +445,11 @@ public final class OutgoingConnectionFactory
super.finalize();
}
- private java.util.List
+ private java.util.List<EndpointI>
applyOverrides(EndpointI[] endpts)
{
DefaultsAndOverrides defaultsAndOverrides = _instance.defaultsAndOverrides();
- java.util.ArrayList endpoints = new java.util.ArrayList();
+ java.util.List<EndpointI> endpoints = new java.util.ArrayList<EndpointI>();
for(int i = 0; i < endpts.length; i++)
{
//
@@ -468,7 +469,7 @@ public final class OutgoingConnectionFactory
}
synchronized private Ice.ConnectionI
- findConnection(java.util.List endpoints, boolean tpc, Ice.BooleanHolder compress)
+ findConnection(java.util.List<EndpointI> endpoints, boolean tpc, Ice.BooleanHolder compress)
{
if(_destroyed)
{
@@ -478,20 +479,20 @@ public final class OutgoingConnectionFactory
DefaultsAndOverrides defaultsAndOverrides = _instance.defaultsAndOverrides();
assert(!endpoints.isEmpty());
- java.util.Iterator p = endpoints.iterator();
+ java.util.Iterator<EndpointI> p = endpoints.iterator();
while(p.hasNext())
{
- EndpointI endpoint = (EndpointI)p.next();
- java.util.LinkedList connectionList = (java.util.LinkedList)_connectionsByEndpoint.get(endpoint);
+ EndpointI endpoint = p.next();
+ java.util.List<Ice.ConnectionI> connectionList = _connectionsByEndpoint.get(endpoint);
if(connectionList == null)
{
continue;
}
- java.util.Iterator q = connectionList.iterator();
+ java.util.Iterator<Ice.ConnectionI> q = connectionList.iterator();
while(q.hasNext())
{
- Ice.ConnectionI connection = (Ice.ConnectionI)q.next();
+ Ice.ConnectionI connection = q.next();
if(connection.isActiveOrHolding() &&
connection.threadPerConnection() == tpc) // Don't return destroyed or un-validated connections
{
@@ -515,31 +516,31 @@ public final class OutgoingConnectionFactory
// Must be called while synchronized.
//
private Ice.ConnectionI
- findConnection(java.util.List connectors, Ice.BooleanHolder compress)
+ findConnection(java.util.List<ConnectorInfo> connectors, Ice.BooleanHolder compress)
{
DefaultsAndOverrides defaultsAndOverrides = _instance.defaultsAndOverrides();
- java.util.Iterator p = connectors.iterator();
+ java.util.Iterator<ConnectorInfo> p = connectors.iterator();
while(p.hasNext())
{
- ConnectorInfo ci = (ConnectorInfo)p.next();
- java.util.LinkedList connectionList = (java.util.LinkedList)_connections.get(ci);
+ ConnectorInfo ci = p.next();
+ java.util.List<Ice.ConnectionI> connectionList = _connections.get(ci);
if(connectionList == null)
{
continue;
}
- java.util.Iterator q = connectionList.iterator();
+ java.util.Iterator<Ice.ConnectionI> q = connectionList.iterator();
while(q.hasNext())
{
- Ice.ConnectionI connection = (Ice.ConnectionI)q.next();
+ Ice.ConnectionI connection = q.next();
if(connection.isActiveOrHolding()) // Don't return destroyed or un-validated connections
{
if(!connection.endpoint().equals(ci.endpoint))
{
- java.util.List conList = (java.util.LinkedList)_connectionsByEndpoint.get(ci.endpoint);
+ java.util.List<Ice.ConnectionI> conList = _connectionsByEndpoint.get(ci.endpoint);
if(conList == null)
{
- conList = new java.util.LinkedList();
+ conList = new java.util.LinkedList<Ice.ConnectionI>();
_connectionsByEndpoint.put(ci.endpoint, conList);
}
conList.add(connection);
@@ -591,7 +592,7 @@ public final class OutgoingConnectionFactory
}
private Ice.ConnectionI
- getConnection(java.util.List connectors, ConnectCallback cb, Ice.BooleanHolder compress)
+ getConnection(java.util.List<ConnectorInfo> connectors, ConnectCallback cb, Ice.BooleanHolder compress)
{
synchronized(this)
{
@@ -603,46 +604,50 @@ public final class OutgoingConnectionFactory
//
// Reap connections for which destruction has completed.
//
- java.util.Iterator p = _connections.values().iterator();
- while(p.hasNext())
{
- java.util.LinkedList connectionList = (java.util.LinkedList)p.next();
- java.util.Iterator q = connectionList.iterator();
- while(q.hasNext())
+ java.util.Iterator<java.util.List<Ice.ConnectionI> > p = _connections.values().iterator();
+ while(p.hasNext())
{
- Ice.ConnectionI con = (Ice.ConnectionI)q.next();
- if(con.isFinished())
+ java.util.List<Ice.ConnectionI> connectionList = p.next();
+ java.util.Iterator<Ice.ConnectionI> q = connectionList.iterator();
+ while(q.hasNext())
{
- q.remove();
+ Ice.ConnectionI con = q.next();
+ if(con.isFinished())
+ {
+ q.remove();
+ }
+ }
+
+ if(connectionList.isEmpty())
+ {
+ p.remove();
}
- }
-
- if(connectionList.isEmpty())
- {
- p.remove();
}
}
- p = _connectionsByEndpoint.values().iterator();
- while(p.hasNext())
{
- java.util.LinkedList connectionList = (java.util.LinkedList)p.next();
- java.util.Iterator q = connectionList.iterator();
- while(q.hasNext())
+ java.util.Iterator<java.util.List<Ice.ConnectionI> > p = _connectionsByEndpoint.values().iterator();
+ while(p.hasNext())
{
- Ice.ConnectionI con = (Ice.ConnectionI)q.next();
- if(con.isFinished())
+ java.util.List<Ice.ConnectionI> connectionList = p.next();
+ java.util.Iterator<Ice.ConnectionI> q = connectionList.iterator();
+ while(q.hasNext())
{
- q.remove();
+ Ice.ConnectionI con = q.next();
+ if(con.isFinished())
+ {
+ q.remove();
+ }
+ }
+
+ if(connectionList.isEmpty())
+ {
+ p.remove();
}
- }
-
- if(connectionList.isEmpty())
- {
- p.remove();
}
}
-
+
//
// Try to get the connection. We may need to wait for other threads to
// finish if one of them is currently establishing a connection to one
@@ -664,10 +669,10 @@ public final class OutgoingConnectionFactory
// connectors since we just found a connection and therefore don't need to
// wait anymore for other pending connectors.
//
- p = connectors.iterator();
+ java.util.Iterator<ConnectorInfo> p = connectors.iterator();
while(p.hasNext())
{
- java.util.Set cbs = (java.util.Set)_pending.get(p.next());
+ java.util.Set<ConnectCallback> cbs = _pending.get(p.next());
if(cbs != null)
{
cbs.remove(cb);
@@ -681,11 +686,11 @@ public final class OutgoingConnectionFactory
// Determine whether another thread is currently attempting to connect to one of our endpoints;
// if so we wait until it's done.
//
- p = connectors.iterator();
+ java.util.Iterator<ConnectorInfo> p = connectors.iterator();
boolean found = false;
while(p.hasNext())
{
- java.util.Set cbs = (java.util.Set)_pending.get(p.next());
+ java.util.Set<ConnectCallback> cbs = _pending.get(p.next());
if(cbs != null)
{
found = true;
@@ -740,13 +745,13 @@ public final class OutgoingConnectionFactory
// the _pending set to indicate that we're attempting connection establishment to
// these connectors. We might attempt to connect to the same connector multiple times.
//
- p = connectors.iterator();
+ java.util.Iterator<ConnectorInfo> p = connectors.iterator();
while(p.hasNext())
{
- Object obj = p.next();
+ ConnectorInfo obj = p.next();
if(!_pending.containsKey(obj))
{
- _pending.put(obj, new java.util.HashSet());
+ _pending.put(obj, new java.util.HashSet<ConnectCallback>());
}
}
}
@@ -785,17 +790,17 @@ public final class OutgoingConnectionFactory
Ice.ConnectionI connection = new Ice.ConnectionI(_instance, transceiver, ci.endpoint.compress(false),
null, ci.threadPerConnection);
- java.util.LinkedList connectionList = (java.util.LinkedList)_connections.get(ci);
+ java.util.List<Ice.ConnectionI> connectionList = _connections.get(ci);
if(connectionList == null)
{
- connectionList = new java.util.LinkedList();
+ connectionList = new java.util.LinkedList<Ice.ConnectionI>();
_connections.put(ci, connectionList);
}
connectionList.add(connection);
- connectionList = (java.util.LinkedList)_connectionsByEndpoint.get(ci.endpoint);
+ connectionList = _connectionsByEndpoint.get(ci.endpoint);
if(connectionList == null)
{
- connectionList = new java.util.LinkedList();
+ connectionList = new java.util.LinkedList<Ice.ConnectionI>();
_connectionsByEndpoint.put(ci.endpoint, connectionList);
}
connectionList.add(connection);
@@ -816,9 +821,9 @@ public final class OutgoingConnectionFactory
}
private void
- finishGetConnection(java.util.List connectors, ConnectCallback cb, Ice.ConnectionI connection)
+ finishGetConnection(java.util.List<ConnectorInfo> connectors, ConnectCallback cb, Ice.ConnectionI connection)
{
- java.util.Set callbacks = new java.util.HashSet();
+ java.util.Set<ConnectCallback> callbacks = new java.util.HashSet<ConnectCallback>();
synchronized(this)
{
@@ -828,10 +833,10 @@ public final class OutgoingConnectionFactory
// notify the pending connect callbacks (outside the synchronization).
//
- java.util.Iterator p = connectors.iterator();
+ java.util.Iterator<ConnectorInfo> p = connectors.iterator();
while(p.hasNext())
{
- java.util.Set cbs = (java.util.Set)_pending.remove(p.next());
+ java.util.Set<ConnectCallback> cbs = _pending.remove(p.next());
if(cbs != null)
{
callbacks.addAll(cbs);
@@ -852,10 +857,10 @@ public final class OutgoingConnectionFactory
//
// Notify any waiting callbacks.
//
- java.util.Iterator p = callbacks.iterator();
+ java.util.Iterator<ConnectCallback> p = callbacks.iterator();
while(p.hasNext())
{
- ((ConnectCallback)p.next()).getConnection();
+ p.next().getConnection();
}
}
@@ -899,7 +904,7 @@ public final class OutgoingConnectionFactory
//
synchronized(this)
{
- java.util.LinkedList connectionList = (java.util.LinkedList)_connections.get(ci);
+ java.util.List<Ice.ConnectionI> connectionList = _connections.get(ci);
if(connectionList != null) // It might have already been reaped!
{
connectionList.remove(connection);
@@ -909,7 +914,7 @@ public final class OutgoingConnectionFactory
}
}
- connectionList = (java.util.LinkedList)_connectionsByEndpoint.get(ci.endpoint);
+ connectionList = _connectionsByEndpoint.get(ci.endpoint);
if(connectionList != null) // It might have already been reaped!
{
connectionList.remove(connection);
@@ -983,7 +988,7 @@ public final class OutgoingConnectionFactory
private static class ConnectCallback implements Ice.ConnectionI.StartCallback, EndpointI_connectors
{
- ConnectCallback(OutgoingConnectionFactory f, java.util.List endpoints, boolean more,
+ ConnectCallback(OutgoingConnectionFactory f, java.util.List<EndpointI> endpoints, boolean more,
CreateConnectionCallback cb, Ice.EndpointSelectionType selType, boolean threadPerConnection)
{
_factory = f;
@@ -1045,7 +1050,7 @@ public final class OutgoingConnectionFactory
// Methods from EndpointI_connectors
//
public void
- connectors(java.util.List cons)
+ connectors(java.util.List<Connector> cons)
{
//
// Shuffle connectors if endpoint selection type is Random.
@@ -1055,10 +1060,10 @@ public final class OutgoingConnectionFactory
java.util.Collections.shuffle(cons);
}
- java.util.Iterator q = cons.iterator();
+ java.util.Iterator<Connector> q = cons.iterator();
while(q.hasNext())
{
- _connectors.add(new ConnectorInfo((Connector)q.next(), _currentEndpoint, _threadPerConnection));
+ _connectors.add(new ConnectorInfo(q.next(), _currentEndpoint, _threadPerConnection));
}
if(_endpointsIter.hasNext())
@@ -1129,7 +1134,7 @@ public final class OutgoingConnectionFactory
try
{
assert(_endpointsIter.hasNext());
- _currentEndpoint = (EndpointI)_endpointsIter.next();
+ _currentEndpoint = _endpointsIter.next();
_currentEndpoint.connectors_async(this);
}
catch(Ice.LocalException ex)
@@ -1177,7 +1182,7 @@ public final class OutgoingConnectionFactory
try
{
assert(_iter.hasNext());
- _current = (ConnectorInfo)_iter.next();
+ _current = _iter.next();
connection = _factory.createConnection(_current.connector.connect(0), _current);
connection.start(this);
}
@@ -1190,21 +1195,24 @@ public final class OutgoingConnectionFactory
private final OutgoingConnectionFactory _factory;
private final boolean _hasMore;
private final CreateConnectionCallback _callback;
- private final java.util.List _endpoints;
+ private final java.util.List<EndpointI> _endpoints;
private final Ice.EndpointSelectionType _selType;
private final boolean _threadPerConnection;
- private java.util.Iterator _endpointsIter;
+ private java.util.Iterator<EndpointI> _endpointsIter;
private EndpointI _currentEndpoint;
- private java.util.List _connectors = new java.util.ArrayList();
- private java.util.Iterator _iter;
+ private java.util.List<ConnectorInfo> _connectors = new java.util.ArrayList<ConnectorInfo>();
+ private java.util.Iterator<ConnectorInfo> _iter;
private ConnectorInfo _current;
}
private final Instance _instance;
private boolean _destroyed;
- private java.util.HashMap _connections = new java.util.HashMap();
- private java.util.HashMap _connectionsByEndpoint = new java.util.HashMap();
- private java.util.HashMap _pending = new java.util.HashMap();
+ private java.util.Map<ConnectorInfo, java.util.List<Ice.ConnectionI> > _connections =
+ new java.util.HashMap<ConnectorInfo, java.util.List<Ice.ConnectionI> >();
+ private java.util.Map<EndpointI, java.util.List<Ice.ConnectionI> > _connectionsByEndpoint =
+ new java.util.HashMap<EndpointI, java.util.List<Ice.ConnectionI> >();
+ private java.util.Map<ConnectorInfo, java.util.HashSet<ConnectCallback> > _pending =
+ new java.util.HashMap<ConnectorInfo, java.util.HashSet<ConnectCallback> >();
private int _pendingConnectCount = 0;
}