Project SkyFire Core
SkyFire 5.4.8 server core API documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
QueryHolder.h
Go to the documentation of this file.
1
/*
2
* This file is part of Project SkyFire https://www.projectskyfire.org.
3
* See LICENSE.md file for Copyright information
4
*/
5
6
#ifndef _QUERYHOLDER_H
7
#define _QUERYHOLDER_H
8
9
#include "
Threading/Future.h
"
10
11
class
SQLQueryHolder
12
{
13
friend
class
SQLQueryHolderTask
;
14
private
:
15
typedef
std::pair<SQLElementData, SQLResultSetUnion>
SQLResultPair
;
16
std::vector<SQLResultPair>
m_queries
;
17
public
:
18
SQLQueryHolder
() { }
19
~SQLQueryHolder
();
20
bool
SetQuery
(
size_t
index,
const
char
* sql);
21
bool
SetPQuery
(
size_t
index,
const
char
* format, ...)
ATTR_PRINTF
(3, 4);
22
bool
SetPreparedQuery
(
size_t
index,
PreparedStatement
* stmt);
23
void
SetSize
(
size_t
size);
24
QueryResult
GetResult
(
size_t
index);
25
PreparedQueryResult
GetPreparedResult
(
size_t
index);
26
void
SetResult
(
size_t
index,
ResultSet
* result);
27
void
SetPreparedResult
(
size_t
index,
PreparedResultSet
* result);
28
};
29
30
typedef
Skyfire
::Future<
SQLQueryHolder
*>
QueryResultHolderFuture
;
31
32
class
SQLQueryHolderTask
: public
SQLOperation
33
{
34
private
:
35
SQLQueryHolder
*
m_holder
;
36
QueryResultHolderFuture
m_result
;
37
38
public
:
39
SQLQueryHolderTask
(
SQLQueryHolder
* holder,
QueryResultHolderFuture
res)
40
:
m_holder
(holder),
m_result
(res) { };
41
bool
Execute();
42
};
43
44
#endif
ATTR_PRINTF
#define ATTR_PRINTF(F, V)
Definition
Define.h:55
Future.h
QueryResultHolderFuture
Skyfire::Future< SQLQueryHolder * > QueryResultHolderFuture
Definition
QueryHolder.h:30
PreparedQueryResult
Skyfire::AutoPtr< PreparedResultSet, Skyfire::Mutex > PreparedQueryResult
Definition
QueryResult.h:94
QueryResult
Skyfire::AutoPtr< ResultSet, Skyfire::Mutex > QueryResult
Definition
QueryResult.h:48
PreparedResultSet
Definition
QueryResult.h:51
PreparedStatement
Definition
PreparedStatement.h:63
ResultSet
Definition
QueryResult.h:19
SQLOperation::SQLOperation
SQLOperation()
Definition
SQLOperation.h:47
SQLQueryHolder
Definition
QueryHolder.h:12
SQLQueryHolder::SQLQueryHolder
SQLQueryHolder()
Definition
QueryHolder.h:18
SQLQueryHolder::SetQuery
bool SetQuery(size_t index, const char *sql)
Definition
QueryHolder.cpp:12
SQLQueryHolder::SetSize
void SetSize(size_t size)
Definition
QueryHolder.cpp:153
SQLQueryHolder::m_queries
std::vector< SQLResultPair > m_queries
Definition
QueryHolder.h:16
SQLQueryHolder::SQLQueryHolderTask
friend class SQLQueryHolderTask
Definition
QueryHolder.h:13
SQLQueryHolder::SetPQuery
bool SetPQuery(size_t index, const char *format,...) ATTR_PRINTF(3
Definition
QueryHolder.cpp:32
SQLQueryHolder::SetPreparedResult
void SetPreparedResult(size_t index, PreparedResultSet *result)
Definition
QueryHolder.cpp:119
SQLQueryHolder::~SQLQueryHolder
~SQLQueryHolder()
Definition
QueryHolder.cpp:132
SQLQueryHolder::SQLResultPair
std::pair< SQLElementData, SQLResultSetUnion > SQLResultPair
Definition
QueryHolder.h:15
SQLQueryHolder::GetPreparedResult
PreparedQueryResult GetPreparedResult(size_t index)
Definition
QueryHolder.cpp:91
SQLQueryHolder::SetResult
void SetResult(size_t index, ResultSet *result)
Definition
QueryHolder.cpp:106
SQLQueryHolder::SetPreparedQuery
bool bool SetPreparedQuery(size_t index, PreparedStatement *stmt)
Definition
QueryHolder.cpp:55
SQLQueryHolder::GetResult
QueryResult GetResult(size_t index)
Definition
QueryHolder.cpp:75
SQLQueryHolderTask::m_result
QueryResultHolderFuture m_result
Definition
QueryHolder.h:36
SQLQueryHolderTask::SQLQueryHolderTask
SQLQueryHolderTask(SQLQueryHolder *holder, QueryResultHolderFuture res)
Definition
QueryHolder.h:39
SQLQueryHolderTask::m_holder
SQLQueryHolder * m_holder
Definition
QueryHolder.h:35
Skyfire
Definition
AuthPatchTransfer.h:12
src
server
shared
Database
QueryHolder.h
Generated on
for Project SkyFire Core by
1.17.0