public interface TransactionContext extends ReadTransactionContext
Transaction is available for database operations. The
behavior of the methods specified in this interface, especially in the face
errors, is implementation specific. In particular, some implementations will
run Functions multiple times (retry) when certain errors are encountered.
Therefore a Function should be prepared to be called more than once. This
consideration means that a Function should use caution when directly
modifying state in a class, especially in a way that could be observed were that
Function to not complete successfully.| Modifier and Type | Method and Description |
|---|---|
<T> T |
run(Function<? super Transaction,T> retryable)
Runs a function in this context that takes a transaction.
|
<T> T |
run(PartialFunction<? super Transaction,T> retryable)
Runs a function in this context that takes a transaction.
|
<T> Future<T> |
runAsync(Function<? super Transaction,Future<T>> retryable)
Runs a function in this context that takes a transaction.
|
<T> PartialFuture<T> |
runAsync(PartialFunction<? super Transaction,? extends PartialFuture<T>> retryable)
Runs a function in this context that takes a transaction.
|
read, read, readAsync, readAsync<T> T run(Function<? super Transaction,T> retryable)
retryable - the block of logic to execute against a Transaction
in this contextretryable<T> T run(PartialFunction<? super Transaction,T> retryable) throws Exception
run(Function) if the called user code throws checked exceptions.retryable - the block of logic to execute against a Transaction
in this contextretryableExceptionrun(Function)<T> Future<T> runAsync(Function<? super Transaction,Future<T>> retryable)
Future that will be set when the process is complete.retryable - the block of logic to execute against a Transaction
in this contextFuture that will be set to the value returned by the last call
to retryable<T> PartialFuture<T> runAsync(PartialFunction<? super Transaction,? extends PartialFuture<T>> retryable)
runAsync(Function) if the called user code throws checked exceptions.retryable - the block of logic to execute against a Transaction
in this contextPartialFuture that will be set to the value returned by the last call
to retryable