// short-circuit no-return-value calls.
if (rsps == null) return Collections.emptyMap();
Map<Address, Response> retval = new HashMap<Address, Response>(rsps.size());
boolean noValidResponses = true;
for (Rsp rsp : rsps.values()) {
noValidResponses = parseResponseAndAddToResponseList(rsp.getValue(), retval, rsp.wasSuspected(), rsp.wasReceived(), fromJGroupsAddress(rsp.getSender()), responseFilter != null) && noValidResponses;
}
if (noValidResponses) throw new TimeoutException("Timed out waiting for valid responses!");
return retval;