34 std::variant<std::unique_ptr<PreparedStatementBase>, std::string>
query;
36 template<
typename... Args>
45 static char const*
ToExecutable(std::string
const& sql) {
return sql.c_str(); }
65 void Append(
char const* sql);
66 template<
typename... Args>
72 std::size_t
GetSize()
const {
return m_queries.size(); }
101 static int TryExecute(
MySQLConnection* conn, std::shared_ptr<TransactionBase> trans);
116 m_callback = std::move(callback);
119 bool InvokeIfReady();
std::vector< TransactionData > m_queries
std::size_t GetSize() const
void PAppend(Trinity::FormatString< Args... > sql, Args &&... args)
void AppendPreparedStatement(PreparedStatementBase *statement)
TransactionBase(TransactionBase const &)=delete
void Append(char const *sql)
TransactionBase(TransactionBase &&) noexcept=default
TransactionCallback(std::future< bool > &&future)
std::future< bool > m_future
TransactionCallback & operator=(TransactionCallback &&)=default
std::function< void(bool)> m_callback
TransactionCallback(TransactionCallback &&)=default
void AfterComplete(std::function< void(bool)> callback) &
static std::mutex _deadlockLock
void Append(PreparedStatement< T > *statement)
void Execute(Creature *me, EventMap &events, uint32 eventId)
std::string StringFormat(FormatString< Args... > fmt, Args &&... args)
Default TC string format function.
fmt::format_string< Args... > FormatString
static PreparedStatementBase * ToExecutable(std::unique_ptr< PreparedStatementBase > const &stmt)
TransactionData(Args &&... args)
std::variant< std::unique_ptr< PreparedStatementBase >, std::string > query
TransactionData(TransactionData const &)=delete
static char const * ToExecutable(std::string const &sql)
TransactionData(TransactionData &&) noexcept=default