Interface ReactorReactiveTransactionOperations<C>
- Type Parameters:
C- The transaction connection
- All Superinterfaces:
ReactiveTransactionOperations<C>
- All Known Subinterfaces:
R2dbcReactorTransactionOperations
- All Known Implementing Classes:
AbstractReactorTransactionOperations
Special version of
ReactiveTransactionOperations that is exposing Reactor publishers.- Since:
- 3.5.0
- Author:
- Denis Stepanov
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.micronaut.transaction.reactive.ReactiveTransactionOperations
ReactiveTransactionOperations.TransactionalCallback<C,T> -
Method Summary
Modifier and TypeMethodDescriptionfindTransactionStatus(@NonNull reactor.util.context.ContextView contextView) Retrieve the transaction status associated to the current transaction manager from the Reactor context.@Nullable TransactionDefinitiongetTransactionDefinition(@NonNull reactor.util.context.ContextView contextView) Retrieve the transaction definition associated to the current transaction from the Reactor context.default @Nullable ReactiveTransactionStatus<C>getTransactionStatus(@NonNull reactor.util.context.ContextView contextView) Retrieve the transaction status associated to the current transaction manager from the Reactor context.default <T> @NonNull reactor.core.publisher.Flux<T>withTransaction(@NonNull ReactiveTransactionOperations.TransactionalCallback<C, T> handler) Execute the given handler with a new transaction.<T> @NonNull reactor.core.publisher.Flux<T>withTransaction(@NonNull TransactionDefinition definition, @NonNull ReactiveTransactionOperations.TransactionalCallback<C, T> handler) Execute the given handler with a new transaction.default <T> reactor.core.publisher.Flux<T>withTransactionFlux(@NonNull TransactionDefinition definition, @NonNull Function<ReactiveTransactionStatus<C>, reactor.core.publisher.Flux<T>> handler) Execute the given handler with a new transaction.default <T> reactor.core.publisher.Flux<T>withTransactionFlux(@NonNull Function<ReactiveTransactionStatus<C>, reactor.core.publisher.Flux<T>> handler) Execute the given handler with a new transaction.default <T> reactor.core.publisher.Mono<T>withTransactionMono(@NonNull TransactionDefinition definition, @NonNull Function<ReactiveTransactionStatus<C>, reactor.core.publisher.Mono<T>> handler) Execute the given handler with a new transaction.default <T> reactor.core.publisher.Mono<T>withTransactionMono(@NonNull Function<ReactiveTransactionStatus<C>, reactor.core.publisher.Mono<T>> handler) Execute the given handler with a new transaction.
-
Method Details
-
findTransactionStatus
Optional<ReactiveTransactionStatus<C>> findTransactionStatus(@NonNull @NonNull reactor.util.context.ContextView contextView) Retrieve the transaction status associated to the current transaction manager from the Reactor context.- Parameters:
contextView- The context view- Returns:
- the key
-
getTransactionStatus
@Nullable default @Nullable ReactiveTransactionStatus<C> getTransactionStatus(@NonNull @NonNull reactor.util.context.ContextView contextView) Retrieve the transaction status associated to the current transaction manager from the Reactor context.- Parameters:
contextView- The context view- Returns:
- the key
-
getTransactionDefinition
@Nullable @Nullable TransactionDefinition getTransactionDefinition(@NonNull @NonNull reactor.util.context.ContextView contextView) Retrieve the transaction definition associated to the current transaction from the Reactor context.- Parameters:
contextView- The context view- Returns:
- the key
-
withTransactionFlux
default <T> reactor.core.publisher.Flux<T> withTransactionFlux(@NonNull @NonNull TransactionDefinition definition, @NonNull @NonNull Function<ReactiveTransactionStatus<C>, reactor.core.publisher.Flux<T>> handler) Execute the given handler with a new transaction.- Type Parameters:
T- The emitted type- Parameters:
definition- The definitionhandler- The handler- Returns:
- A publisher that emits the result type
-
withTransactionFlux
default <T> reactor.core.publisher.Flux<T> withTransactionFlux(@NonNull @NonNull Function<ReactiveTransactionStatus<C>, reactor.core.publisher.Flux<T>> handler) Execute the given handler with a new transaction.- Type Parameters:
T- The emitted type- Parameters:
handler- The handler- Returns:
- A publisher that emits the result type
-
withTransactionMono
default <T> reactor.core.publisher.Mono<T> withTransactionMono(@NonNull @NonNull TransactionDefinition definition, @NonNull @NonNull Function<ReactiveTransactionStatus<C>, reactor.core.publisher.Mono<T>> handler) Execute the given handler with a new transaction.- Type Parameters:
T- The emitted type- Parameters:
definition- The definitionhandler- The handler- Returns:
- A publisher that emits the result type
-
withTransactionMono
default <T> reactor.core.publisher.Mono<T> withTransactionMono(@NonNull @NonNull Function<ReactiveTransactionStatus<C>, reactor.core.publisher.Mono<T>> handler) Execute the given handler with a new transaction.- Type Parameters:
T- The emitted type- Parameters:
handler- The handler- Returns:
- A publisher that emits the result type
-
withTransaction
@NonNull <T> @NonNull reactor.core.publisher.Flux<T> withTransaction(@NonNull @NonNull TransactionDefinition definition, @NonNull @NonNull ReactiveTransactionOperations.TransactionalCallback<C, T> handler) Description copied from interface:ReactiveTransactionOperationsExecute the given handler with a new transaction.- Specified by:
withTransactionin interfaceReactiveTransactionOperations<C>- Type Parameters:
T- The emitted type- Parameters:
definition- The definitionhandler- The handler- Returns:
- A publisher that emits the result type
-
withTransaction
@NonNull default <T> @NonNull reactor.core.publisher.Flux<T> withTransaction(@NonNull @NonNull ReactiveTransactionOperations.TransactionalCallback<C, T> handler) Description copied from interface:ReactiveTransactionOperationsExecute the given handler with a new transaction.- Specified by:
withTransactionin interfaceReactiveTransactionOperations<C>- Type Parameters:
T- The emitted type- Parameters:
handler- The handler- Returns:
- A publisher that emits the result type
-