OpenCBDC Transaction Processor
Loading...
Searching...
No Matches
cbdc::parsec::agent::rpc::server Class Reference

RPC server for an agent running a Lua exector. More...

#include <server.hpp>

Inheritance diagram for cbdc::parsec::agent::rpc::server:
Collaboration diagram for cbdc::parsec::agent::rpc::server:

Public Types

using server_type = cbdc::rpc::async_tcp_server<request, response>
 Underlying RPC server type alias for this implementation.
 

Public Member Functions

 server (std::unique_ptr< server_type > srv, std::shared_ptr< broker::interface > broker, std::shared_ptr< logging::log > log, const cbdc::parsec::config &cfg)
 Constructor.
 
 ~server () override
 Stops the server.
 
auto init () -> bool override
 Initializes the server.
 
 server (const server &)=delete
 
auto operator= (const server &) -> server &=delete
 
 server (server &&)=delete
 
auto operator= (server &&) -> server &=delete
 
- Public Member Functions inherited from cbdc::parsec::agent::rpc::server_interface
 server_interface (std::shared_ptr< broker::interface > broker, std::shared_ptr< logging::log > log, const cbdc::parsec::config &cfg)
 Constructor.
 
virtual ~server_interface ()
 Stops retrying additional transactions and cleans up the runners.
 
 server_interface (const server_interface &)=delete
 
auto operator= (const server_interface &) -> server_interface &=delete
 
 server_interface (server_interface &&)=delete
 
auto operator= (server_interface &&) -> server_interface &=delete
 

Detailed Description

RPC server for an agent running a Lua exector.

Manages retrying function execution if it fails due to a transient error.

Definition at line 15 of file parsec/agent/runners/lua/server.hpp.

Member Typedef Documentation

◆ server_type

Underlying RPC server type alias for this implementation.

Definition at line 18 of file parsec/agent/runners/lua/server.hpp.

Constructor & Destructor Documentation

◆ server() [1/3]

cbdc::parsec::agent::rpc::server::server ( std::unique_ptr< server_type > srv,
std::shared_ptr< broker::interface > broker,
std::shared_ptr< logging::log > log,
const cbdc::parsec::config & cfg )

Constructor.

Registers the agent implementation with the RPC server using a request handler callback.

Parameters
srvpointer to an asynchronous RPC server.
brokerbroker instance.
loglog instance.  
cfgsystem configuration options.

Definition at line 18 of file parsec/agent/runners/lua/server.cpp.

◆ ~server()

cbdc::parsec::agent::rpc::server::~server ( )
override

Stops the server.

Definition at line 30 of file parsec/agent/runners/lua/server.cpp.

◆ server() [2/3]

cbdc::parsec::agent::rpc::server::server ( const server & )
delete

◆ server() [3/3]

cbdc::parsec::agent::rpc::server::server ( server && )
delete

Member Function Documentation

◆ init()

auto cbdc::parsec::agent::rpc::server::init ( ) -> bool
overridevirtual

Initializes the server.

Starts listening for and processing requests.

Returns
true if the server was started successfully.

Implements cbdc::parsec::agent::rpc::server_interface.

Definition at line 36 of file parsec/agent/runners/lua/server.cpp.

◆ operator=() [1/2]

auto cbdc::parsec::agent::rpc::server::operator= ( const server & ) -> server &=delete
delete

◆ operator=() [2/2]

auto cbdc::parsec::agent::rpc::server::operator= ( server && ) -> server &=delete
delete

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