|
Database System 0.1.0
Advanced C++20 Database System with Multi-Backend Support
|
Builder for Saga pattern transactions. More...
#include <async_operations.h>

Classes | |
| struct | saga_step |
Public Member Functions | |
| saga_builder (transaction_coordinator &coordinator) | |
| template<concepts::TransactionAction Action, concepts::CompensationAction Compensation> | |
| saga_builder & | add_step (Action &&action, Compensation &&compensation) |
| saga_builder & | add_step (std::function< async_result< bool >()> action, std::function< async_result< bool >()> compensation) |
| async_result< bool > | execute () |
Private Attributes | |
| transaction_coordinator & | coordinator_ |
| std::vector< saga_step > | steps_ |
Builder for Saga pattern transactions.
Definition at line 707 of file async_operations.h.
|
inline |
Definition at line 1084 of file async_operations.h.
| saga_builder & database::async::saga_builder::add_step | ( | Action && | action, |
| Compensation && | compensation ) |
Definition at line 1099 of file async_operations.h.
References steps_.
|
inline |
Definition at line 1089 of file async_operations.h.
References steps_.
|
inline |
Definition at line 1109 of file async_operations.h.
References database::async::make_ready_result(), steps_, and database::success.
Referenced by TEST_F().


|
private |
Definition at line 729 of file async_operations.h.
|
private |
Definition at line 730 of file async_operations.h.
Referenced by add_step(), add_step(), and execute().