akka.persistence.journal
Interface AsyncWriteJournal

All Superinterfaces:
Actor, AsyncRecovery, WriteJournalBase
All Known Subinterfaces:
AsyncWriteProxy
All Known Implementing Classes:
AsyncWriteJournal, InmemJournal, SharedLeveldbJournal

public interface AsyncWriteJournal
extends Actor, WriteJournalBase, AsyncRecovery

Abstract journal, optimized for asynchronous, non-blocking writes.


Nested Class Summary
static class AsyncWriteJournal.Desequenced
           
static class AsyncWriteJournal.Desequenced$
           
static class AsyncWriteJournal.Resequencer
           
 
Nested classes/interfaces inherited from interface akka.actor.Actor
Actor.emptyBehavior$
 
Method Summary
 scala.concurrent.Future<scala.runtime.BoxedUnit> asyncDeleteMessages(scala.collection.immutable.Seq<PersistentId> messageIds, boolean permanent)
          Plugin API: asynchronously deletes messages identified by messageIds from the journal.
 scala.concurrent.Future<scala.runtime.BoxedUnit> asyncDeleteMessagesTo(java.lang.String persistenceId, long toSequenceNr, boolean permanent)
          Plugin API: asynchronously deletes all persistent messages up to toSequenceNr (inclusive).
 scala.concurrent.Future<scala.runtime.BoxedUnit> asyncWriteConfirmations(scala.collection.immutable.Seq<PersistentConfirmation> confirmations)
          Plugin API: asynchronously writes a batch of delivery confirmations to the journal.
 scala.concurrent.Future<scala.runtime.BoxedUnit> asyncWriteMessages(scala.collection.immutable.Seq<PersistentRepr> messages)
          Plugin API: asynchronously writes a batch of persistent messages to the journal.
 Persistence extension()
           
 boolean publish()
           
 scala.PartialFunction<java.lang.Object,scala.runtime.BoxedUnit> receive()
          This defines the initial actor behavior, it must return a partial function with the actor logic.
 ActorRef resequencer()
           
 long resequencerCounter()
           
 
Methods inherited from interface akka.actor.Actor
aroundPostRestart, aroundPostStop, aroundPreRestart, aroundPreStart, aroundReceive, context, postRestart, postStop, preRestart, preStart, self, sender, supervisorStrategy, unhandled
 
Methods inherited from interface akka.persistence.journal.WriteJournalBase
persistentPrepareWrite, preparePersistentBatch
 
Methods inherited from interface akka.persistence.journal.AsyncRecovery
asyncReadHighestSequenceNr, asyncReplayMessages
 

Method Detail

extension

Persistence extension()

publish

boolean publish()

resequencer

ActorRef resequencer()

resequencerCounter

long resequencerCounter()

receive

scala.PartialFunction<java.lang.Object,scala.runtime.BoxedUnit> receive()
Description copied from interface: Actor
This defines the initial actor behavior, it must return a partial function with the actor logic.

Specified by:
receive in interface Actor
Returns:
(undocumented)

asyncWriteMessages

scala.concurrent.Future<scala.runtime.BoxedUnit> asyncWriteMessages(scala.collection.immutable.Seq<PersistentRepr> messages)
Plugin API: asynchronously writes a batch of persistent messages to the journal. The batch write must be atomic i.e. either all persistent messages in the batch are written or none.

Parameters:
messages - (undocumented)
Returns:
(undocumented)

asyncWriteConfirmations

scala.concurrent.Future<scala.runtime.BoxedUnit> asyncWriteConfirmations(scala.collection.immutable.Seq<PersistentConfirmation> confirmations)
Plugin API: asynchronously writes a batch of delivery confirmations to the journal.

Parameters:
confirmations - (undocumented)
Returns:
(undocumented)

asyncDeleteMessages

scala.concurrent.Future<scala.runtime.BoxedUnit> asyncDeleteMessages(scala.collection.immutable.Seq<PersistentId> messageIds,
                                                                     boolean permanent)
Plugin API: asynchronously deletes messages identified by messageIds from the journal. If permanent is set to false, the persistent messages are marked as deleted, otherwise they are permanently deleted.

Parameters:
messageIds - (undocumented)
permanent - (undocumented)
Returns:
(undocumented)

asyncDeleteMessagesTo

scala.concurrent.Future<scala.runtime.BoxedUnit> asyncDeleteMessagesTo(java.lang.String persistenceId,
                                                                       long toSequenceNr,
                                                                       boolean permanent)
Plugin API: asynchronously deletes all persistent messages up to toSequenceNr (inclusive). If permanent is set to false, the persistent messages are marked as deleted, otherwise they are permanently deleted.

Parameters:
persistenceId - (undocumented)
toSequenceNr - (undocumented)
permanent - (undocumented)
Returns:
(undocumented)