CCF
Loading...
Searching...
No Matches
Public Member Functions | Protected Attributes | List of all members
ccf::CustomProtocolSubsystem Class Reference

#include <custom_protocol_subsystem.h>

Inherits ccf::CustomProtocolSubsystemInterface.

Public Member Functions

 CustomProtocolSubsystem (AbstractNodeState &node_state_)
 
virtual void install (const std::string &protocol_name, CreateSessionFn create_session_f) override
 
virtual void uninstall (const std::string &protocol_name) override
 
virtual std::shared_ptr< Sessioncreate_session (const std::string &protocol_name, ccf::tls::ConnID conn_id, const std::unique_ptr< tls::Context > &&ctx) override
 
virtual std::shared_ptr< Essentialsget_essentials () override
 
- Public Member Functions inherited from ccf::CustomProtocolSubsystemInterface
virtual ~CustomProtocolSubsystemInterface ()=default
 
- Public Member Functions inherited from ccf::AbstractNodeSubSystem
virtual ~AbstractNodeSubSystem ()=default
 

Protected Attributes

AbstractNodeStatenode_state
 
std::map< std::string, CreateSessionFnsession_creation_functions
 

Additional Inherited Members

- Public Types inherited from ccf::CustomProtocolSubsystemInterface
using CreateSessionFn = std::function< std::shared_ptr< Session >(ccf::tls::ConnID, const std::unique_ptr< tls::Context > &&)>
 
- Static Public Member Functions inherited from ccf::CustomProtocolSubsystemInterface
static char const * get_subsystem_name ()
 

Constructor & Destructor Documentation

◆ CustomProtocolSubsystem()

ccf::CustomProtocolSubsystem::CustomProtocolSubsystem ( AbstractNodeState node_state_)
inline

Member Function Documentation

◆ create_session()

virtual std::shared_ptr< Session > ccf::CustomProtocolSubsystem::create_session ( const std::string &  protocol_name,
ccf::tls::ConnID  conn_id,
const std::unique_ptr< tls::Context > &&  ctx 
)
inlineoverridevirtual

◆ get_essentials()

virtual std::shared_ptr< Essentials > ccf::CustomProtocolSubsystem::get_essentials ( )
inlineoverridevirtual

◆ install()

virtual void ccf::CustomProtocolSubsystem::install ( const std::string &  protocol_name,
CreateSessionFn  create_session_f 
)
inlineoverridevirtual

◆ uninstall()

virtual void ccf::CustomProtocolSubsystem::uninstall ( const std::string &  protocol_name)
inlineoverridevirtual

Member Data Documentation

◆ node_state

AbstractNodeState& ccf::CustomProtocolSubsystem::node_state
protected

◆ session_creation_functions

std::map<std::string, CreateSessionFn> ccf::CustomProtocolSubsystem::session_creation_functions
protected

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