|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object akka.actor.UntypedActor akka.persistence.UntypedPersistentActor akka.persistence.UntypedPersistentActorWithAtLeastOnceDelivery
public abstract class UntypedPersistentActorWithAtLeastOnceDelivery
Java API: Use this class instead of UntypedPersistentActor
to send messages
with at-least-once delivery semantics to destinations.
Full documentation in AtLeastOnceDelivery
.
AtLeastOnceDelivery
Nested Class Summary |
---|
Nested classes/interfaces inherited from interface akka.persistence.Recovery |
---|
Recovery.State |
Nested classes/interfaces inherited from interface akka.actor.Actor |
---|
Actor.emptyBehavior$ |
Nested classes/interfaces inherited from interface akka.persistence.Eventsourced |
---|
Eventsourced.PendingHandlerInvocation |
Constructor Summary | |
---|---|
UntypedPersistentActorWithAtLeastOnceDelivery()
|
Method Summary | |
---|---|
void |
deliver(ActorPath destination,
Function<java.lang.Long,java.lang.Object> deliveryIdToMessage)
Java API: Send the message created by the deliveryIdToMessage function to
the destination actor. |
Methods inherited from class akka.persistence.UntypedPersistentActor |
---|
defer, defer, onReceive, onReceiveCommand, onReceiveRecover, persist, persist, persistAsync, persistAsync, receiveCommand, receiveRecover |
Methods inherited from class akka.actor.UntypedActor |
---|
getContext, getSelf, getSender, postRestart, postStop, preRestart, preStart, receive, supervisorStrategy, unhandled |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface akka.persistence.Processor |
---|
persistenceId |
Methods inherited from interface akka.persistence.ProcessorImpl |
---|
_persistenceId, aroundPreStart, deleteMessage, deleteMessage, deleteMessages, deleteMessages, flushJournalBatch, initializing, instanceId, nextSequenceNr, onRecoveryCompleted, onRecoveryFailure, onReplayFailure, onReplaySuccess, preRestart, preRestartDefault, preStart, processing, processorBatch, processorId, recoveryFinished, recoveryRunning, sequenceNr, snapshotterId, unhandled, unstashFilterPredicate |
Methods inherited from interface akka.persistence.Recovery |
---|
_currentPersistent, _currentState, _lastSequenceNr, _recoveryFailureCause, _recoveryFailureMessage, currentPersistentMessage, extension, getCurrentPersistentMessage, journal, lastSequenceNr, prepareRestart, receiverStash, recoveryPending, recoveryStarted, replayFailed, replayStarted, runReceive, snapshotSequenceNr, updateLastSequenceNr, updateLastSequenceNr, withCurrentPersistent |
Methods inherited from interface akka.persistence.Snapshotter |
---|
deleteSnapshot, deleteSnapshots, loadSnapshot, saveSnapshot, snapshotStore |
Methods inherited from interface akka.actor.UnrestrictedStash |
---|
postStop |
Methods inherited from interface akka.actor.Actor |
---|
aroundPostRestart, context, postRestart, receive, self, sender, supervisorStrategy |
Methods inherited from interface akka.actor.StashSupport |
---|
actorCell, capacity, clearStash, context, enqueueFirst, mailbox, prepend, self, stash, theStash, unstash, unstashAll, unstashAll |
Methods inherited from interface akka.actor.StashFactory |
---|
createStash |
Methods inherited from interface akka.persistence.Eventsourced |
---|
aroundPreRestart, aroundReceive, currentState, defer, defer, flushBatch, initialBehavior, pendingInvocations, pendingStashingPersistInvocations, persist, persist, persistAsync, persistAsync, persistingEvents, postStop, preRestart, processingCommands, processorStash, recovering, recoveryBehavior, resequenceableEventBatch, unstashAll, useProcessorBatching |
Constructor Detail |
---|
public UntypedPersistentActorWithAtLeastOnceDelivery()
Method Detail |
---|
public void deliver(ActorPath destination, Function<java.lang.Long,java.lang.Object> deliveryIdToMessage)
deliveryIdToMessage
function to
the destination
actor. It will retry sending the message until
the delivery is confirmed with AtLeastOnceDelivery.confirmDelivery(long)
. Correlation
between deliver
and confirmDelivery
is performed with the
deliveryId
that is provided as parameter to the deliveryIdToMessage
function. The deliveryId
is typically passed in the message to the
destination, which replies with a message containing the same deliveryId
.
The deliveryId
is a strictly monotonically increasing sequence number without
gaps. The same sequence is used for all destinations, i.e. when sending to
multiple destinations the destinations will see gaps in the sequence if no
translation is performed.
During recovery this method will not send out the message, but it will be sent
later if no matching confirmDelivery
was performed.
This method will throw AtLeastOnceDelivery.MaxUnconfirmedMessagesExceededException
if numberOfUnconfirmed
is greater than or equal to AtLeastOnceDelivery.maxUnconfirmedMessages()
.
destination
- (undocumented)deliveryIdToMessage
- (undocumented)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |