com.holonplatform.reactor.datastore.transaction

## Interface ReactiveTransactional

-     public interface ReactiveTransactional

  Represents an object which is capable to manage reactive transactions, providing methods to execute an operation transactionally and using `ReactiveTransaction` as transaction handler.
  Since:
    5.2.0

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method and Description
    --- | ---
    `default <R> reactor.core.publisher.Flux<R>` | `withTransaction(ReactiveTransactionalOperation<R> operation)` Execute given operation within a transaction and return a result.
    `<R> reactor.core.publisher.Flux<R>` | `withTransaction(ReactiveTransactionalOperation<R> operation, com.holonplatform.core.datastore.transaction.TransactionConfiguration transactionConfiguration)` Execute given operation within a transaction and return a result.

- - ### Method Detail

    - #### withTransaction

          <R> reactor.core.publisher.Flux<R> withTransaction(ReactiveTransactionalOperation<R> operation,
                                                             com.holonplatform.core.datastore.transaction.TransactionConfiguration transactionConfiguration)

      Execute given operation within a transaction and return a result. An `ReactiveTransaction` reference is provided to perform `commit` and `rollback` operations.
      Type Parameters:
        `R` - Operation result type
      Parameters:
        `operation` - Operation to execute (not null)
        `transactionConfiguration` - Transaction configuration
      Returns:
        A `Flux` which can be used to handle the asynchronous operation outcome and the operation results

    - #### withTransaction

          default <R> reactor.core.publisher.Flux<R> withTransaction(ReactiveTransactionalOperation<R> operation)

      Execute given operation within a transaction and return a result. An `ReactiveTransaction` reference is provided to perform `commit` and `rollback` operations.
      Type Parameters:
        `R` - Operation result type
      Parameters:
        `operation` - Operation to execute (not null)
      Returns:
        A `Flux` which can be used to handle the asynchronous operation outcome and the operation results

Copyright © 2019 The Holon Platform. All rights reserved.