public Responses clear() { lock.lock(); try { index=0; return _done(); } finally { lock.unlock(); } }
public Responses done() { lock.lock(); try {return _done();} finally {lock.unlock();} }
public void addResponse(PingData rsp, boolean overwrite) { if(rsp == null) return; boolean is_coord_rsp=rsp.isCoord(), changed=false; lock.lock(); try { // https://jira.jboss.org/jira/browse/JGRP-1179 int ind=find(rsp); if(ind == -1) { // new addition add(rsp); changed=true; } else { PingData existing=ping_rsps[ind]; // cannot be null if(overwrite || (is_coord_rsp && !existing.isCoord())) { ping_rsps[ind]=rsp; changed=true; } } if(changed && ((num_expected_rsps > 0 && index >= num_expected_rsps) || break_on_coord_rsp && is_coord_rsp)) _done(); } finally { lock.unlock(); } }
public Responses clear() { lock.lock(); try { index=0; return _done(); } finally { lock.unlock(); } }
public Responses done() { lock.lock(); try {return _done();} finally {lock.unlock();} }
public void addResponse(PingData rsp, boolean overwrite) { if(rsp == null) return; boolean is_coord_rsp=rsp.isCoord(), changed=false; lock.lock(); try { // https://jira.jboss.org/jira/browse/JGRP-1179 int ind=find(rsp); if(ind == -1) { // new addition add(rsp); changed=true; } else { PingData existing=ping_rsps[ind]; // cannot be null if(overwrite || (is_coord_rsp && !existing.isCoord())) { ping_rsps[ind]=rsp; changed=true; } } if(changed && ((num_expected_rsps > 0 && index >= num_expected_rsps) || break_on_coord_rsp && is_coord_rsp)) _done(); } finally { lock.unlock(); } }