Class Shard
- java.lang.Object
-
- akka.actor.AbstractActor
-
- akka.persistence.AbstractPersistentActor
-
- org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor
-
- org.opendaylight.controller.cluster.raft.RaftActor
-
- org.opendaylight.controller.cluster.datastore.Shard
-
- All Implemented Interfaces:
akka.actor.Actor,akka.actor.Stash,akka.actor.StashFactory,akka.actor.StashSupport,akka.actor.UnrestrictedStash,akka.dispatch.RequiresMessageQueue<akka.dispatch.DequeBasedMessageQueueSemantics>,akka.persistence.AbstractPersistentActorLike,akka.persistence.Eventsourced,akka.persistence.PersistenceIdentity,akka.persistence.PersistenceRecovery,akka.persistence.PersistenceStash,akka.persistence.Snapshotter,org.opendaylight.controller.cluster.common.actor.ExecuteInSelfActor
public class Shard extends org.opendaylight.controller.cluster.raft.RaftActorA Shard represents a portion of the logical data tree.Our Shard uses InMemoryDataTree as it's internal representation and delegates all requests it
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classShard.AbstractBuilder<T extends Shard.AbstractBuilder<T,S>,S extends Shard>static classShard.Builder-
Nested classes/interfaces inherited from class akka.actor.AbstractActor
akka.actor.AbstractActor.ActorContext, akka.actor.AbstractActor.Receive
-
Nested classes/interfaces inherited from interface akka.actor.Actor
akka.actor.Actor.emptyBehavior$, akka.actor.Actor.ignoringBehavior$
-
Nested classes/interfaces inherited from interface akka.persistence.Eventsourced
akka.persistence.Eventsourced.AsyncHandlerInvocation, akka.persistence.Eventsourced.AsyncHandlerInvocation$, akka.persistence.Eventsourced.PendingHandlerInvocation, akka.persistence.Eventsourced.RecoveryTick, akka.persistence.Eventsourced.RecoveryTick$, akka.persistence.Eventsourced.StashingHandlerInvocation, akka.persistence.Eventsourced.StashingHandlerInvocation$
-
-
Field Summary
Fields Modifier and Type Field Description static StringDEFAULT_NAMEstatic StringNON_PERSISTENT_JOURNAL_ID
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidapplyState(akka.actor.ActorRef clientActor, org.opendaylight.yangtools.concepts.Identifier identifier, Object data)static Shard.Builderbuilder()protected org.opendaylight.controller.cluster.raft.RaftActorRecoveryCohortgetRaftActorRecoveryCohort()protected org.opendaylight.controller.cluster.raft.RaftActorSnapshotCohortgetRaftActorSnapshotCohort()protected Optional<akka.actor.ActorRef>getRoleChangeNotifier()protected voidhandleNonRaftCommand(Object message)protected voidhandleRecover(Object message)protected booleanisIsolatedLeader()StringjournalPluginId()protected org.opendaylight.controller.cluster.notifications.LeaderStateChangednewLeaderStateChanged(String memberId, String leaderId, short leaderPayloadVersion)protected org.opendaylight.controller.cluster.raft.client.messages.OnDemandRaftState.AbstractBuilder<?,?>newOnDemandRaftStateBuilder()protected voidonLeaderChanged(String oldLeader, String newLeader)protected voidonRecoveryComplete()protected voidonStateChanged()protected voidpauseLeader(Runnable operation)StringpersistenceId()voidpostStop()protected voidunpauseLeader()-
Methods inherited from class org.opendaylight.controller.cluster.raft.RaftActor
changeCurrentBehavior, getCurrentBehavior, getCurrentTerm, getId, getLeader, getLeaderId, getRaftActorContext, getRaftState, handleCommand, hasFollowers, isLeader, isLeaderActive, isLeadershipTransferInProgress, newRaftActorRecoverySupport, onVotingStateChangeComplete, persistData, persistence, preStart, setPeerAddress, setPersistence, setPersistence, snapshotSequenceNr, updateConfigParams
-
Methods inherited from class org.opendaylight.controller.cluster.common.actor.AbstractUntypedPersistentActor
createReceive, createReceiveRecover, executeInSelf, ignoreMessage, unknownMessage
-
Methods inherited from class akka.persistence.AbstractPersistentActor
akka$actor$StashSupport$_setter_$akka$actor$StashSupport$$capacity_$eq, akka$actor$StashSupport$_setter_$mailbox_$eq, akka$actor$StashSupport$$capacity, akka$actor$StashSupport$$theStash, akka$actor$StashSupport$$theStash_$eq, akka$persistence$Eventsourced$_setter_$akka$persistence$Eventsourced$$extension_$eq, akka$persistence$Eventsourced$_setter_$akka$persistence$Eventsourced$$instanceId_$eq, akka$persistence$Eventsourced$_setter_$akka$persistence$Eventsourced$$internalStash_$eq, akka$persistence$Eventsourced$_setter_$akka$persistence$Eventsourced$$maxMessageBatchSize_$eq, akka$persistence$Eventsourced$_setter_$akka$persistence$Eventsourced$$pendingInvocations_$eq, akka$persistence$Eventsourced$_setter_$akka$persistence$Eventsourced$$persistingEvents_$eq, akka$persistence$Eventsourced$_setter_$akka$persistence$Eventsourced$$processingCommands_$eq, akka$persistence$Eventsourced$_setter_$akka$persistence$Eventsourced$$unstashFilterPredicate_$eq, akka$persistence$Eventsourced$_setter_$akka$persistence$Eventsourced$$writerUuid_$eq, akka$persistence$Eventsourced$$_lastSequenceNr, akka$persistence$Eventsourced$$_lastSequenceNr_$eq, akka$persistence$Eventsourced$$currentState, akka$persistence$Eventsourced$$currentState_$eq, akka$persistence$Eventsourced$$eventBatch, akka$persistence$Eventsourced$$eventBatch_$eq, akka$persistence$Eventsourced$$extension, akka$persistence$Eventsourced$$instanceId, akka$persistence$Eventsourced$$internalStash, akka$persistence$Eventsourced$$journalBatch, akka$persistence$Eventsourced$$journalBatch_$eq, akka$persistence$Eventsourced$$maxMessageBatchSize, akka$persistence$Eventsourced$$pendingInvocations, akka$persistence$Eventsourced$$pendingStashingPersistInvocations, akka$persistence$Eventsourced$$pendingStashingPersistInvocations_$eq, akka$persistence$Eventsourced$$persistingEvents, akka$persistence$Eventsourced$$processingCommands, akka$persistence$Eventsourced$$sequenceNr, akka$persistence$Eventsourced$$sequenceNr_$eq, akka$persistence$Eventsourced$$unstashFilterPredicate, akka$persistence$Eventsourced$$writeInProgress, akka$persistence$Eventsourced$$writeInProgress_$eq, akka$persistence$Eventsourced$$writerUuid, aroundPostRestart, aroundPostStop, aroundPreRestart, aroundPreStart, aroundReceive, clearStash, createStash, defer, deferAsync, deleteMessages, deleteSnapshot, deleteSnapshots, internalDefer, internalDeferAsync, internalDeleteMessagesBeforeSnapshot, internalPersist, internalPersistAll, internalPersistAllAsync, internalPersistAsync, internalStashOverflowStrategy, journal, lastSequenceNr, loadSnapshot, mailbox, onPersistFailure, onPersistRejected, onRecoveryFailure, onReplaySuccess, persist, persistAll, persistAllAsync, persistAsync, prepend, preRestart, receiveCommand, receiveRecover, recovery, recoveryFinished, recoveryRunning, saveSnapshot, snapshotPluginId, snapshotStore, snapshotterId, stash, unhandled, unstash, unstashAll, unstashAll
-
Methods inherited from class akka.actor.AbstractActor
akka$actor$Actor$_setter_$context_$eq, akka$actor$Actor$_setter_$self_$eq, context, emptyBehavior, getContext, getSelf, getSender, postRestart, preRestart, receive, receiveBuilder, self, sender, supervisorStrategy
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface akka.actor.Actor
akka$actor$Actor$_setter_$context_$eq, akka$actor$Actor$_setter_$self_$eq, context, postRestart, receive, self, sender, supervisorStrategy
-
Methods inherited from interface akka.persistence.Eventsourced
akka$persistence$Eventsourced$$changeState, akka$persistence$Eventsourced$$flushBatch, akka$persistence$Eventsourced$$flushJournalBatch, akka$persistence$Eventsourced$$log, akka$persistence$Eventsourced$$peekApplyHandler, akka$persistence$Eventsourced$$recovering, akka$persistence$Eventsourced$$setLastSequenceNr, akka$persistence$Eventsourced$$startRecovery, akka$persistence$Eventsourced$$stashInternally, akka$persistence$Eventsourced$$unstashInternally, akka$persistence$Eventsourced$$updateLastSequenceNr, akka$persistence$Eventsourced$$writeEventFailed, akka$persistence$Eventsourced$$writeEventRejected, akka$persistence$Eventsourced$$writeEventSucceeded
-
-
-
-
Field Detail
-
DEFAULT_NAME
public static final String DEFAULT_NAME
- See Also:
- Constant Field Values
-
NON_PERSISTENT_JOURNAL_ID
public static final String NON_PERSISTENT_JOURNAL_ID
- See Also:
- Constant Field Values
-
-
Method Detail
-
postStop
public final void postStop() throws Exception- Specified by:
postStopin interfaceakka.actor.Actor- Specified by:
postStopin interfaceakka.actor.UnrestrictedStash- Overrides:
postStopin classorg.opendaylight.controller.cluster.raft.RaftActor- Throws:
Exception
-
handleRecover
protected final void handleRecover(Object message)
- Overrides:
handleRecoverin classorg.opendaylight.controller.cluster.raft.RaftActor
-
handleNonRaftCommand
protected void handleNonRaftCommand(Object message)
- Overrides:
handleNonRaftCommandin classorg.opendaylight.controller.cluster.raft.RaftActor
-
getRoleChangeNotifier
protected final Optional<akka.actor.ActorRef> getRoleChangeNotifier()
- Specified by:
getRoleChangeNotifierin classorg.opendaylight.controller.cluster.raft.RaftActor
-
newLeaderStateChanged
protected final org.opendaylight.controller.cluster.notifications.LeaderStateChanged newLeaderStateChanged(String memberId, String leaderId, short leaderPayloadVersion)
- Overrides:
newLeaderStateChangedin classorg.opendaylight.controller.cluster.raft.RaftActor
-
isIsolatedLeader
protected boolean isIsolatedLeader()
-
getRaftActorSnapshotCohort
protected final org.opendaylight.controller.cluster.raft.RaftActorSnapshotCohort getRaftActorSnapshotCohort()
- Specified by:
getRaftActorSnapshotCohortin classorg.opendaylight.controller.cluster.raft.RaftActor
-
getRaftActorRecoveryCohort
protected final org.opendaylight.controller.cluster.raft.RaftActorRecoveryCohort getRaftActorRecoveryCohort()
- Specified by:
getRaftActorRecoveryCohortin classorg.opendaylight.controller.cluster.raft.RaftActor
-
onRecoveryComplete
protected void onRecoveryComplete()
- Specified by:
onRecoveryCompletein classorg.opendaylight.controller.cluster.raft.RaftActor
-
applyState
protected final void applyState(akka.actor.ActorRef clientActor, org.opendaylight.yangtools.concepts.Identifier identifier, Object data)- Specified by:
applyStatein classorg.opendaylight.controller.cluster.raft.RaftActor
-
onStateChanged
protected final void onStateChanged()
- Specified by:
onStateChangedin classorg.opendaylight.controller.cluster.raft.RaftActor
-
onLeaderChanged
protected final void onLeaderChanged(String oldLeader, String newLeader)
- Overrides:
onLeaderChangedin classorg.opendaylight.controller.cluster.raft.RaftActor
-
pauseLeader
protected final void pauseLeader(Runnable operation)
- Overrides:
pauseLeaderin classorg.opendaylight.controller.cluster.raft.RaftActor
-
unpauseLeader
protected final void unpauseLeader()
- Overrides:
unpauseLeaderin classorg.opendaylight.controller.cluster.raft.RaftActor
-
newOnDemandRaftStateBuilder
protected final org.opendaylight.controller.cluster.raft.client.messages.OnDemandRaftState.AbstractBuilder<?,?> newOnDemandRaftStateBuilder()
- Overrides:
newOnDemandRaftStateBuilderin classorg.opendaylight.controller.cluster.raft.RaftActor
-
persistenceId
public final String persistenceId()
-
journalPluginId
public final String journalPluginId()
- Specified by:
journalPluginIdin interfaceakka.persistence.PersistenceIdentity- Overrides:
journalPluginIdin classakka.persistence.AbstractPersistentActor
-
builder
public static Shard.Builder builder()
-
-