OpenCBDC Transaction Processor
|
Thread-safe ticket machine implementation. More...
#include <impl.hpp>
Public Member Functions | |
impl (std::shared_ptr< logging::log > logger, ticket_number_type range) | |
Constructor. | |
auto | get_ticket_number (get_ticket_number_callback_type result_callback) -> bool override |
Returns a new range of ticket numbers via the provided callback function. | |
![]() | |
virtual | ~interface ()=default |
interface ()=default | |
interface (const interface &)=delete | |
auto | operator= (const interface &) -> interface &=delete |
interface (interface &&)=delete | |
auto | operator= (interface &&) -> interface &=delete |
Additional Inherited Members | |
![]() | |
enum class | error_code : uint8_t |
Error codes returned by the ticket machine. More... | |
using | ticket_number_range_type = std::pair<ticket_number_type, ticket_number_type> |
Return value from the ticket machine in the success case. | |
using | get_ticket_number_return_type = std::variant<ticket_number_range_type, error_code> |
Return value from the ticket machine. | |
using | get_ticket_number_callback_type = std::function<void(get_ticket_number_return_type)> |
Callback function type for asynchronously handling ticket number requests. | |
Thread-safe ticket machine implementation.
Definition at line 17 of file ticket_machine/impl.hpp.
|
explicit |
Constructor.
logger | log instance. |
range | size of ticket number range to return. |
Definition at line 9 of file ticket_machine/impl.cpp.
|
overridevirtual |
Returns a new range of ticket numbers via the provided callback function.
Calls the callback function before returning.
result_callback | function to call with result. |
Implements cbdc::parsec::ticket_machine::interface.
Definition at line 14 of file ticket_machine/impl.cpp.