public boolean getResponsesComplete() { lock.lock(); try { return responsesComplete(); } finally { lock.unlock(); } }
/** Marks all responses with an exception (unless a response was already marked as done) */ public void transportClosed() { boolean changed=false; lock.lock(); try { for(Map.Entry<Address, Rsp<T>> entry: rsps.entrySet()) { Rsp<T> rsp=entry.getValue(); if(rsp != null && !(rsp.wasReceived() || rsp.wasSuspected() || rsp.wasUnreachable())) { rsp.setException(new IllegalStateException("transport was closed")); num_received++; changed=true; } } if(changed && responsesComplete()) { complete(this.rsps); corrDone(); } } finally { lock.unlock(); } }
if(responsesComplete()) { complete(this.rsps); corrDone();
if(changed && responsesComplete()) { complete(this.rsps); corrDone();
if(responsesComplete() || (rsp_filter != null && !rsp_filter.needMoreResponses())) { complete(this.rsps); corrDone();
public boolean getResponsesComplete() { lock.lock(); try { return responsesComplete(); } finally { lock.unlock(); } }
if(responsesComplete()) { complete(this.rsps); corrDone();
if(expected_mbrs >= num_total) { rsp_mode=GET_ALL; return responsesComplete();
/** Marks all responses with an exception (unless a response was already marked as done) */ public void transportClosed() { boolean changed=false; lock.lock(); try { for(Map.Entry<Address, Rsp<T>> entry: rsps.entrySet()) { Rsp<T> rsp=entry.getValue(); if(rsp != null && !(rsp.wasReceived() || rsp.wasSuspected() || rsp.wasUnreachable())) { rsp.setException(new IllegalStateException("transport was closed")); num_received++; changed=true; } } if(changed && responsesComplete()) { complete(this.rsps); corrDone(); } } finally { lock.unlock(); } }
while(true) { /* Wait for responses: */ if(responsesComplete()) { if(corr != null) { corr.done(req_id); long timeout_time=start_time + timeout; while(timeout > 0) { /* Wait for responses: */ if(responsesComplete()) { if(corr != null) corr.done(req_id);
if(changed && responsesComplete()) { complete(this.rsps); corrDone();
if(responsesComplete() || (rsp_filter != null && !rsp_filter.needMoreResponses())) { complete(this.rsps); corrDone();