summaryrefslogtreecommitdiff
path: root/libodb-pgsql/odb/pgsql/transaction-impl.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'libodb-pgsql/odb/pgsql/transaction-impl.hxx')
-rw-r--r--libodb-pgsql/odb/pgsql/transaction-impl.hxx49
1 files changed, 49 insertions, 0 deletions
diff --git a/libodb-pgsql/odb/pgsql/transaction-impl.hxx b/libodb-pgsql/odb/pgsql/transaction-impl.hxx
new file mode 100644
index 0000000..5c93b0e
--- /dev/null
+++ b/libodb-pgsql/odb/pgsql/transaction-impl.hxx
@@ -0,0 +1,49 @@
+// file : odb/pgsql/transaction-impl.hxx
+// license : GNU GPL v2; see accompanying LICENSE file
+
+#ifndef ODB_PGSQL_TRANSACTION_IMPL_HXX
+#define ODB_PGSQL_TRANSACTION_IMPL_HXX
+
+#include <odb/pre.hxx>
+
+#include <odb/transaction.hxx>
+
+#include <odb/pgsql/version.hxx>
+#include <odb/pgsql/forward.hxx>
+
+#include <odb/pgsql/details/export.hxx>
+
+namespace odb
+{
+ namespace pgsql
+ {
+ class LIBODB_PGSQL_EXPORT transaction_impl: public odb::transaction_impl
+ {
+ public:
+ typedef pgsql::database database_type;
+ typedef pgsql::connection connection_type;
+
+ transaction_impl (database_type&);
+ transaction_impl (connection_ptr);
+
+ virtual
+ ~transaction_impl ();
+
+ virtual void
+ start ();
+
+ virtual void
+ commit ();
+
+ virtual void
+ rollback ();
+
+ private:
+ connection_ptr connection_;
+ };
+ }
+}
+
+#include <odb/post.hxx>
+
+#endif // ODB_PGSQL_TRANSACTION_IMPL_HXX