SNode.C
Loading...
Searching...
No Matches
database::mariadb::commands::async::MariaDBConnectCommand Class Reference

#include <MariaDBConnectCommand.h>

Inheritance diagram for database::mariadb::commands::async::MariaDBConnectCommand:
Collaboration diagram for database::mariadb::commands::async::MariaDBConnectCommand:

Public Member Functions

 MariaDBConnectCommand (const database::mariadb::MariaDBConnectionDetails &details, const std::function< void(void)> &onConnecting, const std::function< void(void)> &onConnect, const std::function< void(const std::string &, unsigned int)> &onError)
 
- Public Member Functions inherited from database::mariadb::MariaDBCommandASync
 ~MariaDBCommandASync () override
 
 MariaDBCommand (const std::string &name, const std::function< void(const std::string &, unsigned int)> &onError)
 
- Public Member Functions inherited from database::mariadb::MariaDBCommand
 MariaDBCommand (const std::string &name, const std::function< void(const std::string &, unsigned int)> &onError)
 
virtual ~MariaDBCommand ()=default
 
const std::string & commandName ()
 
int commandStart (MYSQL *mysql, const utils::Timeval &currentTime)
 
void setMariaDBConnection (MariaDBConnection *mariaDBConnection)
 

Private Member Functions

int commandStart () override
 
int commandContinue (int status) override
 
bool commandCompleted () override
 
void commandError (const std::string &errorString, unsigned int errorNumber) override
 
std::string commandInfo () override
 

Private Attributes

MYSQL * ret = nullptr
 
const database::mariadb::MariaDBConnectionDetails details
 
const std::function< void(void)> onConnecting
 
const std::function< void(void)> onConnect
 

Additional Inherited Members

- Protected Attributes inherited from database::mariadb::MariaDBCommand
MYSQL * mysql = nullptr
 
const std::function< void(const std::string &, unsigned int)> onError
 

Detailed Description

Definition at line 55 of file MariaDBConnectCommand.h.

Constructor & Destructor Documentation

◆ MariaDBConnectCommand()

database::mariadb::commands::async::MariaDBConnectCommand::MariaDBConnectCommand ( const database::mariadb::MariaDBConnectionDetails details,
const std::function< void(void)> &  onConnecting,
const std::function< void(void)> &  onConnect,
const std::function< void(const std::string &, unsigned int)> &  onError 
)

Definition at line 51 of file MariaDBConnectCommand.cpp.

55 : MariaDBCommandASync("Connect", onError)
59 }
const std::function< void(const std::string &, unsigned int)> onError
const database::mariadb::MariaDBConnectionDetails details

References details, and MariaDBConnectCommand().

Referenced by MariaDBConnectCommand().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Function Documentation

◆ commandCompleted()

bool database::mariadb::commands::async::MariaDBConnectCommand::commandCompleted ( )
overrideprivatevirtual

Implements database::mariadb::MariaDBCommand.

Definition at line 81 of file MariaDBConnectCommand.cpp.

81 {
82 onConnect();
83
84 return true;
85 }

◆ commandContinue()

int database::mariadb::commands::async::MariaDBConnectCommand::commandContinue ( int  status)
overrideprivatevirtual

Implements database::mariadb::MariaDBCommand.

Definition at line 77 of file MariaDBConnectCommand.cpp.

77 {
78 return mysql_real_connect_cont(&ret, mysql, status);
79 }

◆ commandError()

void database::mariadb::commands::async::MariaDBConnectCommand::commandError ( const std::string &  errorString,
unsigned int  errorNumber 
)
overrideprivatevirtual

Implements database::mariadb::MariaDBCommand.

Definition at line 87 of file MariaDBConnectCommand.cpp.

87 {
88 onError(errorString, errorNumber);
89 }

◆ commandInfo()

std::string database::mariadb::commands::async::MariaDBConnectCommand::commandInfo ( )
overrideprivatevirtual

Reimplemented from database::mariadb::MariaDBCommand.

Definition at line 91 of file MariaDBConnectCommand.cpp.

References database::mariadb::MariaDBCommand::commandName(), details, database::mariadb::MariaDBConnectionDetails::hostname, database::mariadb::MariaDBConnectionDetails::port, and database::mariadb::MariaDBConnectionDetails::socket.

Here is the call graph for this function:

◆ commandStart()

int database::mariadb::commands::async::MariaDBConnectCommand::commandStart ( )
overrideprivatevirtual

Implements database::mariadb::MariaDBCommand.

Definition at line 61 of file MariaDBConnectCommand.cpp.

61 {
62 const int status = mysql_real_connect_start(&ret,
63 mysql,
64 details.hostname.c_str(),
65 details.username.c_str(),
66 details.password.c_str(),
67 details.database.c_str(),
69 details.socket.c_str(),
71
73
74 return status;
75 }

Member Data Documentation

◆ details

const database::mariadb::MariaDBConnectionDetails database::mariadb::commands::async::MariaDBConnectCommand::details
private

Definition at line 70 of file MariaDBConnectCommand.h.

Referenced by commandInfo(), and MariaDBConnectCommand().

◆ onConnect

const std::function<void(void)> database::mariadb::commands::async::MariaDBConnectCommand::onConnect
private

Definition at line 73 of file MariaDBConnectCommand.h.

◆ onConnecting

const std::function<void(void)> database::mariadb::commands::async::MariaDBConnectCommand::onConnecting
private

Definition at line 72 of file MariaDBConnectCommand.h.

◆ ret

MYSQL* database::mariadb::commands::async::MariaDBConnectCommand::ret = nullptr
private

Definition at line 69 of file MariaDBConnectCommand.h.


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