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

#include <MariaDBExecCommand.h>

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

Public Member Functions

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

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 MariaDBExecCommand.h.

Constructor & Destructor Documentation

◆ MariaDBExecCommand()

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

Definition at line 51 of file MariaDBExecCommand.cpp.

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

References MariaDBExecCommand(), and sql.

Referenced by MariaDBExecCommand().

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

Implements database::mariadb::MariaDBCommand.

Definition at line 67 of file MariaDBExecCommand.cpp.

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

◆ commandContinue()

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

Implements database::mariadb::MariaDBCommand.

Definition at line 63 of file MariaDBExecCommand.cpp.

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

References ret.

◆ commandError()

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

Implements database::mariadb::MariaDBCommand.

Definition at line 73 of file MariaDBExecCommand.cpp.

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

◆ commandInfo()

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

Reimplemented from database::mariadb::MariaDBCommand.

Definition at line 77 of file MariaDBExecCommand.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::MariaDBExecCommand::commandStart ( )
overrideprivatevirtual

Implements database::mariadb::MariaDBCommand.

Definition at line 59 of file MariaDBExecCommand.cpp.

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

References ret, and sql.

Member Data Documentation

◆ onExec

const std::function<void(void)> database::mariadb::commands::async::MariaDBExecCommand::onExec
private

Definition at line 70 of file MariaDBExecCommand.h.

◆ ret

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

Definition at line 67 of file MariaDBExecCommand.h.

Referenced by commandContinue(), and commandStart().

◆ sql

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

Definition at line 69 of file MariaDBExecCommand.h.

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


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