private void idle() { checkInterruptedStatus(); aeronClientInvoker.invoke(); idleStrategy.idle(); }
private Image awaitImage(final int sessionId, final Subscription subscription) { idleStrategy.reset(); Image image; while ((image = subscription.imageBySessionId(sessionId)) == null) { idle(); } return image; }
private void awaitConnectedPublication(final long deadlineNs) { while (!publication.isConnected()) { checkDeadline(deadlineNs, "awaiting connection to cluster"); idleStrategy.idle(); } }
void awaitImageAndCreateFollowerLogAdapter(final Subscription subscription, final int logSessionId) { leadershipTermId = election.leadershipTermId(); idleStrategy.reset(); while (!pollImageAndLogAdapter(subscription, logSessionId)) { idle(); } }
public static void pingHandler( final Publication pongPublication, final DirectBuffer buffer, final int offset, final int length) { if (pongPublication.offer(buffer, offset, length) > 0L) { return; } PING_HANDLER_IDLE_STRATEGY.reset(); while (pongPublication.offer(buffer, offset, length) < 0L) { PING_HANDLER_IDLE_STRATEGY.idle(); } } }
private void idle(final int workCount) { checkInterruptedStatus(); aeronClientInvoker.invoke(); idleStrategy.idle(workCount); }
private int awaitRecordingCounter(final CountersReader counters, final int sessionId) { idleStrategy.reset(); int counterId = RecordingPos.findCounterIdBySession(counters, sessionId); while (CountersReader.NULL_COUNTER_ID == counterId) { idle(); counterId = RecordingPos.findCounterIdBySession(counters, sessionId); } return counterId; }
public void idle() { checkInterruptedStatus(); checkForClockTick(); idleStrategy.idle(); }
private void awaitRecordingComplete( final long recordingId, final long position, final CountersReader counters, final int counterId) { idleStrategy.reset(); do { idle(); if (!RecordingPos.isActive(counters, counterId, recordingId)) { throw new ClusterException("recording has stopped unexpectedly: " + recordingId); } } while (counters.getCounterValue(counterId) < position); }
private int awaitRecordingCounter(final int sessionId, final CountersReader counters) { idleStrategy.reset(); int counterId = RecordingPos.findCounterIdBySession(counters, sessionId); while (NULL_COUNTER_ID == counterId) { checkInterruptedStatus(); idleStrategy.idle(); counterId = RecordingPos.findCounterIdBySession(counters, sessionId); } return counterId; }
public void idle(final int workCount) { checkInterruptedStatus(); checkForClockTick(); idleStrategy.idle(workCount); }
void consensusModuleState(final long nextSessionId) { final int length = MessageHeaderEncoder.ENCODED_LENGTH + ConsensusModuleEncoder.BLOCK_LENGTH; idleStrategy.reset(); while (true) { final long result = publication.tryClaim(length, bufferClaim); if (result > 0) { consensusModuleEncoder .wrapAndApplyHeader(bufferClaim.buffer(), bufferClaim.offset(), messageHeaderEncoder) .nextSessionId(nextSessionId); bufferClaim.commit(); break; } checkResultAndIdle(result); } }
idleStrategy.idle(fragmentsRead);
void snapshotTimer(final long correlationId, final long deadline) { idleStrategy.reset(); while (true) { final long result = publication.tryClaim(ENCODED_TIMER_LENGTH, bufferClaim); if (result > 0) { timerEncoder .wrapAndApplyHeader(bufferClaim.buffer(), bufferClaim.offset(), messageHeaderEncoder) .correlationId(correlationId) .deadline(deadline); bufferClaim.commit(); break; } checkResultAndIdle(result); } }
private void awaitConnection(final long deadlineNs, final ControlResponsePoller poller, final long correlationId) { idleStrategy.reset(); while (!poller.subscription().isConnected()) { checkDeadline(deadlineNs, "failed to establish response connection", correlationId); idleStrategy.idle(); invokeAeronClient(); } }
protected void checkResultAndIdle(final long result) { checkResult(result); checkInterruptedStatus(); invokeAeronClient(); idleStrategy.idle(); }
void clusterMembers(final int memberId, final int highMemberId, final ClusterMember[] members) { final String clusterMembers = ClusterMember.encodeAsString(members); final int length = MessageHeaderEncoder.ENCODED_LENGTH + ClusterMembersEncoder.BLOCK_LENGTH + ClusterMembersEncoder.clusterMembersHeaderLength() + clusterMembers.length(); idleStrategy.reset(); while (true) { final long result = publication.tryClaim(length, bufferClaim); if (result > 0) { clusterMembersEncoder .wrapAndApplyHeader(bufferClaim.buffer(), bufferClaim.offset(), messageHeaderEncoder) .memberId(memberId) .highMemberId(highMemberId) .clusterMembers(clusterMembers); bufferClaim.commit(); break; } checkResultAndIdle(result); } } }