_roundStartTime = nextRoundStart;
}
while (_currentNodes.hasNext()) {
final PutCallState call = _currentNodes.next();
final ClusterServerNode server = call.server();
CallFailure fail = server.entryPutter().tryPut(_callConfig, _params, _endOfTime, _key, _content);
if (fail == null) { // success
_currentNodes.remove();
_result.addSucceeded(server);
if (_shouldFinish(_result, oksNeeded)) {
return true;
}
continue;
}
if (fail.isRetriable()) {
call.addFailure(fail);
} else {
_currentNodes.remove();
_result.withFailed(new NodeFailure(server, fail));
}