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 32 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 29 of file MariaDBExecCommand.cpp.

32 : MariaDBCommandASync("Insert", onError)
33 , sql(sql)
34 , onExec(onExec) {
35 }
const std::function< void(const std::string &, unsigned int)> onError

References MariaDBExecCommand().

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 45 of file MariaDBExecCommand.cpp.

45 {
46 onExec();
47
48 return true;
49 }

◆ commandContinue()

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

Implements database::mariadb::MariaDBCommand.

Definition at line 41 of file MariaDBExecCommand.cpp.

41 {
42 return mysql_real_query_cont(&ret, mysql, status);
43 }

◆ commandError()

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

Implements database::mariadb::MariaDBCommand.

Definition at line 51 of file MariaDBExecCommand.cpp.

51 {
52 onError(errorString, errorNumber);
53 }

◆ commandInfo()

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

Reimplemented from database::mariadb::MariaDBCommand.

Definition at line 55 of file MariaDBExecCommand.cpp.

55 {
56 return commandName() + ": " + sql;
57 }

◆ commandStart()

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

Implements database::mariadb::MariaDBCommand.

Definition at line 37 of file MariaDBExecCommand.cpp.

37 {
38 return mysql_real_query_start(&ret, mysql, sql.c_str(), sql.length());
39 }

Member Data Documentation

◆ onExec

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

Definition at line 48 of file MariaDBExecCommand.h.

◆ ret

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

Definition at line 45 of file MariaDBExecCommand.h.

◆ sql

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

Definition at line 47 of file MariaDBExecCommand.h.


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