libpqxx  7.5.0
dbtransaction.hxx
1 /* Definition of the pqxx::dbtransaction abstract base class.
2  *
3  * pqxx::dbransaction defines a real transaction on the database.
4  *
5  * DO NOT INCLUDE THIS FILE DIRECTLY; include pqxx/dbtransaction instead.
6  *
7  * Copyright (c) 2000-2021, Jeroen T. Vermeulen.
8  *
9  * See COPYING for copyright license. If you did not receive a file called
10  * COPYING with this source code, please notify the distributor of this
11  * mistake, or contact the author.
12  */
13 #ifndef PQXX_H_DBTRANSACTION
14 #define PQXX_H_DBTRANSACTION
15 
16 #include "pqxx/compiler-public.hxx"
17 #include "pqxx/internal/compiler-internal-pre.hxx"
18 
19 #include "pqxx/transaction_base.hxx"
20 
21 namespace pqxx
22 {
24 
52 class PQXX_LIBEXPORT PQXX_NOVTABLE dbtransaction : public transaction_base
53 {
54 protected:
58  dbtransaction(connection &c, std::string_view tname) :
59  transaction_base{c, tname}
60  {}
63  connection &c, std::string_view tname,
64  std::shared_ptr<std::string> rollback_cmd) :
65  transaction_base{c, tname, rollback_cmd}
66  {}
67 };
68 } // namespace pqxx
69 
70 #include "pqxx/internal/compiler-internal-post.hxx"
71 #endif
The home of all libpqxx classes, functions, templates, etc.
Definition: array.hxx:25
dbtransaction(connection &c, std::string_view tname, std::shared_ptr< std::string > rollback_cmd)
Begin transaction.
Definition: dbtransaction.hxx:62
dbtransaction(connection &c)
Begin transaction.
Definition: dbtransaction.hxx:56
dbtransaction(connection &c, std::string_view tname)
Begin transaction.
Definition: dbtransaction.hxx:58
Interface definition (and common code) for "transaction" classes.
Definition: transaction_base.hxx:74
Connection to a database.
Definition: connection.hxx:183
Abstract transaction base class: bracket transactions on the database.
Definition: dbtransaction.hxx:52