Interface AsyncTransactionManager.AsyncTransactionFunction<I,O> (6.68.0)

public static interface AsyncTransactionManager.AsyncTransactionFunction<I,O>

Each step in a transaction chain is defined by an AsyncTransactionFunction. It receives a TransactionContext and the output value of the previous transaction step as its input parameters. The method should return an ApiFuture that will return the result of this step.

Type Parameters

Name Description
I
O

Methods

apply(TransactionContext txn, I input)

public abstract ApiFuture<O> apply(TransactionContext txn, I input)

This method is called when this transaction step is executed. The input value is the result of the previous step, and this method will only be called if the previous step executed successfully.

Parameters
Name Description
txn TransactionContext

the TransactionContext that can be used to execute statements.

input I

the result of the previous transaction step.

Returns
Type Description
ApiFuture<O>

an ApiFuture that will return the result of this step, and that will be the input of the next transaction step. This method should never return null. Instead, if the method does not have a return value, the method should return ApiFutures#immediateFuture(null).

Exceptions
Type Description
Exception