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

#include <MariaDBQueryCommand.h>

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

Public Member Functions

 MariaDBQueryCommand (const std::string &sql, const std::function< void(void)> &onQuery, 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

int ret = 0
const std::string sql
const std::function< void(void)> onQuery

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 54 of file MariaDBQueryCommand.h.

Constructor & Destructor Documentation

◆ MariaDBQueryCommand()

database::mariadb::commands::async::MariaDBQueryCommand::MariaDBQueryCommand ( const std::string & sql,
const std::function< void(void)> & onQuery,
const std::function< void(const std::string &, unsigned int)> & onError )

Definition at line 51 of file MariaDBQueryCommand.cpp.

54 : MariaDBCommandASync("Query", onError)
55 , sql(sql)
56 , onQuery(onQuery) {
57 }
const std::function< void(const std::string &, unsigned int)> onError

References MariaDBQueryCommand(), and sql.

Referenced by MariaDBQueryCommand().

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::MariaDBQueryCommand::commandCompleted ( )
overrideprivatevirtual

Implements database::mariadb::MariaDBCommand.

Definition at line 67 of file MariaDBQueryCommand.cpp.

67 {
68 onQuery();
69
70 return true;
71 }

◆ commandContinue()

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

Implements database::mariadb::MariaDBCommand.

Definition at line 63 of file MariaDBQueryCommand.cpp.

63 {
64 return mysql_real_query_cont(&ret, mysql, status);
65 }

References ret.

◆ commandError()

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

Implements database::mariadb::MariaDBCommand.

Definition at line 73 of file MariaDBQueryCommand.cpp.

73 {
74 onError(errorString, errorNumber);
75 }

◆ commandInfo()

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

Reimplemented from database::mariadb::MariaDBCommand.

Definition at line 77 of file MariaDBQueryCommand.cpp.

77 {
78 return commandName() + " " + sql;
79 }

References database::mariadb::MariaDBCommand::commandName(), and sql.

Here is the call graph for this function:

◆ commandStart()

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

Implements database::mariadb::MariaDBCommand.

Definition at line 59 of file MariaDBQueryCommand.cpp.

59 {
60 return mysql_real_query_start(&ret, mysql, sql.c_str(), sql.length());
61 }

References ret, and sql.

Member Data Documentation

◆ onQuery

const std::function<void(void)> database::mariadb::commands::async::MariaDBQueryCommand::onQuery
private

Definition at line 70 of file MariaDBQueryCommand.h.

◆ ret

int database::mariadb::commands::async::MariaDBQueryCommand::ret = 0
private

Definition at line 67 of file MariaDBQueryCommand.h.

Referenced by commandContinue(), and commandStart().

◆ sql

const std::string database::mariadb::commands::async::MariaDBQueryCommand::sql
private

Definition at line 69 of file MariaDBQueryCommand.h.

Referenced by commandInfo(), commandStart(), and MariaDBQueryCommand().


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