public final class RecordingSignalCapture extends Object implements RecordingSignalConsumer
RecordingSignalConsumer implementation that captures recording signal data.
Usage example:
final RecordingSignalCapture recordingSignalCapture = new RecordingSignalCapture();
try (Aeron aeron = Aeron.connect(new Aeron.Context().aeronDirectoryName(aeronDirectoryName));
AeronArchive archive = AeronArchive.connect(new AeronArchive.Context()
.recordingSignalConsumer(recordingSignalCapture)
.aeron(aeron)))
{
...
recordingSignalCapture.reset();
archive.replicate(srcRecordingId, dstRecordingId, ...);
recordingSignalCapture.awaitSignalForRecordingId(archive, dstRecordingId, RecordingSignal.STOP);
final long stopPosition = recordingSignalCapture.position();
recordingSignalCapture.reset();
recordingSignalCapture.awaitSignalForRecordingId(archive, dstRecordingId, RecordingSignal.REPLICATE_END);
...
}
| Constructor and Description |
|---|
RecordingSignalCapture() |
| Modifier and Type | Method and Description |
|---|---|
void |
awaitSignalForCorrelationId(AeronArchive archive,
long expectedCorrelationId,
RecordingSignal expectedSignal)
Uses
AeronArchive.pollForRecordingSignals() until the specified signal is received. |
void |
awaitSignalForRecordingId(AeronArchive archive,
long expectedRecordingId,
RecordingSignal expectedSignal)
Uses
AeronArchive.pollForRecordingSignals() until the specified signal for the specified recording is
received. |
long |
controlSessionId()
Control session id captured when the
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked. |
long |
correlationId()
Correlation id captured when the
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked. |
void |
onSignal(long controlSessionId,
long correlationId,
long recordingId,
long subscriptionId,
long position,
RecordingSignal signal)
Signal of operation taken on a recording.
|
long |
position()
Recording position captured when the
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked. |
long |
recordingId()
Recording id captured when the
onSignal(long, long, long, long, long, RecordingSignal) was last invoked. |
void |
reset()
Reset internal state before awaiting next signal.
|
RecordingSignal |
signal()
Recording signal captured when the
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked. |
long |
subscriptionId()
Subscription id captured when the
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked. |
public void onSignal(long controlSessionId,
long correlationId,
long recordingId,
long subscriptionId,
long position,
RecordingSignal signal)
onSignal in interface RecordingSignalConsumercontrolSessionId - that initiated the operation.correlationId - that initiated the operation, could be the replication id.recordingId - which has signalled.subscriptionId - of the Subscription associated with the recording.position - of the recorded stream at the point of signal.signal - type of the operation applied to the recording.public void awaitSignalForCorrelationId(AeronArchive archive, long expectedCorrelationId, RecordingSignal expectedSignal)
AeronArchive.pollForRecordingSignals() until the specified signal is received.archive - client to poll for signals on.expectedCorrelationId - to match the signal.expectedSignal - to await.public void awaitSignalForRecordingId(AeronArchive archive, long expectedRecordingId, RecordingSignal expectedSignal)
AeronArchive.pollForRecordingSignals() until the specified signal for the specified recording is
received.archive - client to poll for signals on.expectedRecordingId - that should be delivered with the signal.expectedSignal - to await.public void reset()
public long controlSessionId()
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked.onSignal(long, long, long, long, long, RecordingSignal)public long correlationId()
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked.onSignal(long, long, long, long, long, RecordingSignal)public long subscriptionId()
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked.onSignal(long, long, long, long, long, RecordingSignal)public long recordingId()
onSignal(long, long, long, long, long, RecordingSignal) was last invoked.onSignal(long, long, long, long, long, RecordingSignal)public long position()
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked.onSignal(long, long, long, long, long, RecordingSignal)public RecordingSignal signal()
onSignal(long, long, long, long, long, RecordingSignal) was last
invoked.onSignal(long, long, long, long, long, RecordingSignal)Copyright © 2014-2023 Real Logic Limited. All Rights Reserved.