public class RemoteTransactionContext extends Object
Modifier | Constructor and Description |
---|---|
protected |
RemoteTransactionContext(TransactionIdentifier identifier,
akka.actor.ActorSelection actor,
ActorContext actorContext,
short remoteTransactionVersion,
OperationLimiter limiter) |
Modifier and Type | Method and Description |
---|---|
void |
closeTransaction() |
scala.concurrent.Future<Object> |
directCommit(Boolean havePermit) |
void |
executeModification(AbstractModification modification,
Boolean havePermit) |
<T> void |
executeRead(AbstractRead<T> readCmd,
com.google.common.util.concurrent.SettableFuture<T> returnFuture,
Boolean havePermit) |
protected ActorContext |
getActorContext() |
protected TransactionIdentifier |
getIdentifier()
Get the transaction identifier associated with this context.
|
short |
getTransactionVersion() |
protected void |
incrementModificationCount() |
protected boolean |
isOperationHandOffComplete() |
protected void |
logModificationCount() |
void |
operationHandOffComplete()
Invoked by
TransactionContextWrapper when it has finished handing
off operations to this context. |
scala.concurrent.Future<akka.actor.ActorSelection> |
readyTransaction(Boolean havePermit,
Optional<SortedSet<String>> participatingShardNames) |
protected scala.concurrent.Future<Object> |
sendBatchedModifications() |
protected scala.concurrent.Future<Object> |
sendBatchedModifications(boolean ready,
boolean doCommitOnReady,
Optional<SortedSet<String>> participatingShardNames) |
protected scala.concurrent.Future<akka.actor.ActorSelection> |
transformReadyReply(scala.concurrent.Future<Object> readyReplyFuture) |
boolean |
usesOperationLimiting()
A TransactionContext that uses operation limiting should return true else false.
|
protected RemoteTransactionContext(TransactionIdentifier identifier, akka.actor.ActorSelection actor, ActorContext actorContext, short remoteTransactionVersion, OperationLimiter limiter)
protected ActorContext getActorContext()
public void closeTransaction()
public scala.concurrent.Future<akka.actor.ActorSelection> readyTransaction(Boolean havePermit, Optional<SortedSet<String>> participatingShardNames)
protected scala.concurrent.Future<akka.actor.ActorSelection> transformReadyReply(scala.concurrent.Future<Object> readyReplyFuture)
protected scala.concurrent.Future<Object> sendBatchedModifications()
protected scala.concurrent.Future<Object> sendBatchedModifications(boolean ready, boolean doCommitOnReady, Optional<SortedSet<String>> participatingShardNames)
public void executeModification(AbstractModification modification, Boolean havePermit)
public <T> void executeRead(AbstractRead<T> readCmd, com.google.common.util.concurrent.SettableFuture<T> returnFuture, Boolean havePermit)
public boolean usesOperationLimiting()
@Nonnull protected final TransactionIdentifier getIdentifier()
protected final void incrementModificationCount()
protected final void logModificationCount()
public final void operationHandOffComplete()
TransactionContextWrapper
when it has finished handing
off operations to this context. From this point on, the context is responsible
for throttling operations.
Implementations can rely on the wrapper calling this operation in a synchronized block, so they do not need to ensure visibility of this state transition themselves.
protected boolean isOperationHandOffComplete()
public short getTransactionVersion()
Copyright © 2019 OpenDaylight. All rights reserved.