kea-custom-hooks
FeM custom hooks libraries for Kea DHCP
Public Member Functions | Public Attributes | List of all members
ahri::AdminDBClientPrivate Struct Reference

Public Member Functions

 AdminDBClientPrivate (std::string psql_connstring, size_t initial_last_processed_update_id)
 
 AdminDBClientPrivate (const AdminDBClientPrivate &)=delete
 
AdminDBClientPrivateoperator= (const AdminDBClientPrivate &)=delete
 
 AdminDBClientPrivate (AdminDBClientPrivate &&)=delete
 
AdminDBClientPrivateoperator= (AdminDBClientPrivate &&)=delete
 
 ~AdminDBClientPrivate ()
 
void reconnect ()
 
void handle_notifications_int (const AdminDBClient::dhcp_update_callback_t &cb)
 
void attempt_reconnect ()
 
void start_notifcation_receiver_thread ()
 
void notification_receiver_worker ()
 

Public Attributes

const std::string psql_connstring
 
std::unique_ptr< pqxx::connection > psql_connection {nullptr}
 
std::recursive_mutex psql_connection_mtx
 
std::unique_ptr< AdminDBClientNotificationHandleractive_notification_handler
 
bool run_notification_receiver {true}
 
std::unique_ptr< std::thread > notification_receiver_thread
 
size_t last_returned_update_id {0}
 
isc::log::Logger logger {"ahri"}
 

Detailed Description

Definition at line 50 of file AdminDBClient.cpp.

Constructor & Destructor Documentation

◆ AdminDBClientPrivate() [1/3]

ahri::AdminDBClientPrivate::AdminDBClientPrivate ( std::string  psql_connstring,
size_t  initial_last_processed_update_id 
)
inline

Definition at line 52 of file AdminDBClient.cpp.

◆ AdminDBClientPrivate() [2/3]

ahri::AdminDBClientPrivate::AdminDBClientPrivate ( const AdminDBClientPrivate )
delete

◆ AdminDBClientPrivate() [3/3]

ahri::AdminDBClientPrivate::AdminDBClientPrivate ( AdminDBClientPrivate &&  )
delete

◆ ~AdminDBClientPrivate()

ahri::AdminDBClientPrivate::~AdminDBClientPrivate ( )
inline

Definition at line 64 of file AdminDBClient.cpp.

Member Function Documentation

◆ attempt_reconnect()

void ahri::AdminDBClientPrivate::attempt_reconnect ( )
inline

Definition at line 118 of file AdminDBClient.cpp.

◆ handle_notifications_int()

void ahri::AdminDBClientPrivate::handle_notifications_int ( const AdminDBClient::dhcp_update_callback_t cb)
inline

Definition at line 111 of file AdminDBClient.cpp.

◆ notification_receiver_worker()

void ahri::AdminDBClientPrivate::notification_receiver_worker ( )
inline

Definition at line 153 of file AdminDBClient.cpp.

◆ operator=() [1/2]

AdminDBClientPrivate & ahri::AdminDBClientPrivate::operator= ( AdminDBClientPrivate &&  )
delete

◆ operator=() [2/2]

AdminDBClientPrivate & ahri::AdminDBClientPrivate::operator= ( const AdminDBClientPrivate )
delete

◆ reconnect()

void ahri::AdminDBClientPrivate::reconnect ( )
inline

Definition at line 83 of file AdminDBClient.cpp.

◆ start_notifcation_receiver_thread()

void ahri::AdminDBClientPrivate::start_notifcation_receiver_thread ( )
inline

Definition at line 143 of file AdminDBClient.cpp.

Member Data Documentation

◆ active_notification_handler

std::unique_ptr<AdminDBClientNotificationHandler> ahri::AdminDBClientPrivate::active_notification_handler

Definition at line 188 of file AdminDBClient.cpp.

◆ last_returned_update_id

size_t ahri::AdminDBClientPrivate::last_returned_update_id {0}

Definition at line 192 of file AdminDBClient.cpp.

◆ logger

isc::log::Logger ahri::AdminDBClientPrivate::logger {"ahri"}

Definition at line 194 of file AdminDBClient.cpp.

◆ notification_receiver_thread

std::unique_ptr<std::thread> ahri::AdminDBClientPrivate::notification_receiver_thread

Definition at line 190 of file AdminDBClient.cpp.

◆ psql_connection

std::unique_ptr<pqxx::connection> ahri::AdminDBClientPrivate::psql_connection {nullptr}

Definition at line 185 of file AdminDBClient.cpp.

◆ psql_connection_mtx

std::recursive_mutex ahri::AdminDBClientPrivate::psql_connection_mtx

Definition at line 186 of file AdminDBClient.cpp.

◆ psql_connstring

const std::string ahri::AdminDBClientPrivate::psql_connstring

Definition at line 184 of file AdminDBClient.cpp.

◆ run_notification_receiver

bool ahri::AdminDBClientPrivate::run_notification_receiver {true}

Definition at line 189 of file AdminDBClient.cpp.


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