ProxyGetConnection.java
// Copyright (c) ZeroC, Inc.
package com.zeroc.Ice;
class ProxyGetConnection extends ProxyOutgoingAsyncBase<Connection> {
public ProxyGetConnection(_ObjectPrxI prx) {
super(prx, "ice_getConnection");
_observer = ObserverHelper.get(prx, "ice_getConnection");
}
@Override
protected void markCompleted() {
complete(_cachedConnection);
}
@Override
public boolean completed(InputStream is) {
assert false;
return false;
}
@Override
public int invokeRemote(ConnectionI connection, boolean compress, boolean response)
throws RetryException {
_cachedConnection = connection;
if (finished(true, true)) {
invokeCompletedAsync();
}
return AsyncStatus.Sent;
}
@Override
public int invokeCollocated(CollocatedRequestHandler handler) {
if (finished(true, true)) {
invokeCompletedAsync();
}
return AsyncStatus.Sent;
}
public void invoke() {
try {
invokeImpl(true); // userThread = true
} catch (LocalException ex) {
abort(ex);
}
}
}