// - the updated result call is repositioned to the end of the queue
// Result collapsing
if (_cycleCompletedIndex != -1) {
// There's an old cycle completed call in the queue - find it and move to end
CycleCompletedCall cycleCompletedCall = pullCallToEnd(_cycleCompletedIndex);
// Merge new cycle completed call into old one
cycleCompletedCall.update(fullResult, deltaResult);
} else {
// No existing cycle completed call - add new one
CycleCompletedCall cycleCompletedCall = new CycleCompletedCall(fullResult, deltaResult);
_cycleCompletedIndex = _callQueue.size();
_callQueue.add(cycleCompletedCall);
}
// Only keep the cycle started call for the latest complete result