public void add(ProxyOutgoingAsyncBase outAsync, int interval) { lock (this) { if (_communicator == null) { throw new Ice.CommunicatorDestroyedException(); } RetryTask task = new RetryTask(_communicator, this, outAsync); outAsync.cancelable(task); // This will throw if the request is canceled. _communicator.timer().schedule(task, interval); _requests.Add(task, null); } }
public int sendAsyncRequest(ProxyOutgoingAsyncBase outAsync) { lock (this) { if (!_initialized) { outAsync.cancelable(this); // This will throw if the request is canceled } if (!initialized()) { _requests.AddLast(outAsync); return(OutgoingAsyncBase.AsyncStatusQueued); } } return(outAsync.invokeRemote(_connection, _compress, _response)); }
public bool sendAsyncRequest(ProxyOutgoingAsyncBase outAsync, out Ice.AsyncCallback sentCallback) { lock (this) { if (!_initialized) { outAsync.cancelable(this); // This will throw if the request is canceled } if (!initialized()) { _requests.AddLast(outAsync); sentCallback = null; return(false); } } return(outAsync.invokeRemote(_connection, _compress, _response, out sentCallback)); }