OpenCBDC Transaction Processor
Loading...
Searching...
No Matches
cbdc::parsec::ticket_machine::controller Class Reference

Manages a replicated ticket machine using Raft. More...

#include <controller.hpp>

Public Member Functions

 controller (size_t node_id, network::endpoint_t server_endpoint, std::vector< network::endpoint_t > raft_endpoints, std::shared_ptr< logging::log > logger)
 Constructor.
 
 ~controller ()=default
 
 controller ()=delete
 
 controller (const controller &)=delete
 
auto operator= (const controller &) -> controller &=delete
 
 controller (controller &&)=delete
 
auto operator= (controller &&) -> controller &=delete
 
auto init () -> bool
 Initializes the ticket machine.
 

Detailed Description

Manages a replicated ticket machine using Raft.

Definition at line 17 of file parsec/ticket_machine/controller.hpp.

Constructor & Destructor Documentation

◆ controller() [1/4]

cbdc::parsec::ticket_machine::controller::controller ( size_t node_id,
network::endpoint_t server_endpoint,
std::vector< network::endpoint_t > raft_endpoints,
std::shared_ptr< logging::log > logger )

Constructor.

Parameters
node_idnode ID within the cluster.
server_endpointendpoint to listen for RPC requests on.
raft_endpointsvector of endpoints for the raft nodes in the cluster.
loggerlog to use for output.

Definition at line 14 of file parsec/ticket_machine/controller.cpp.

◆ ~controller()

cbdc::parsec::ticket_machine::controller::~controller ( )
default

◆ controller() [2/4]

cbdc::parsec::ticket_machine::controller::controller ( )
delete

◆ controller() [3/4]

cbdc::parsec::ticket_machine::controller::controller ( const controller & )
delete

◆ controller() [4/4]

cbdc::parsec::ticket_machine::controller::controller ( controller && )
delete

Member Function Documentation

◆ init()

auto cbdc::parsec::ticket_machine::controller::init ( ) -> bool

Initializes the ticket machine.

Starts the raft instance and joins the raft cluster.

Returns
true if initialization was successful.

Definition at line 36 of file parsec/ticket_machine/controller.cpp.

◆ operator=() [1/2]

auto cbdc::parsec::ticket_machine::controller::operator= ( const controller & ) -> controller &=delete
delete

◆ operator=() [2/2]

auto cbdc::parsec::ticket_machine::controller::operator= ( controller && ) -> controller &=delete
delete

The documentation for this class was generated from the following files: