aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/libpq++/pgtransdb.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/interfaces/libpq++/pgtransdb.h')
-rw-r--r--src/interfaces/libpq++/pgtransdb.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/interfaces/libpq++/pgtransdb.h b/src/interfaces/libpq++/pgtransdb.h
new file mode 100644
index 00000000000..4bce4b1e7be
--- /dev/null
+++ b/src/interfaces/libpq++/pgtransdb.h
@@ -0,0 +1,48 @@
+/*-------------------------------------------------------------------------
+ *
+ * pgtransdb.h
+ *
+ *
+ * DESCRIPTION
+ * Postgres Transaction Database Class:
+ * Query Postgres backend using a transaction block
+ *
+ * NOTES
+ * Currently under construction.
+ *
+ * Copyright (c) 1994, Regents of the University of California
+ *
+ *-------------------------------------------------------------------------
+ */
+
+#ifndef PGTRANSDB_H
+#define PGTRANSDB_H
+
+#include "pgdatabase.h"
+
+
+// ****************************************************************
+//
+// PgTransaction - a class for running transactions against databases
+//
+// ****************************************************************
+// This is the database access class that keeps an open
+// transaction block during its lifetime. The block is ENDed when
+// the object is destroyed.
+class PgTransaction : public PgDatabase {
+public:
+ PgTransaction(const char* dbName); // use reasonable defaults
+ // connect to the database with given environment and database name
+ PgTransaction(const PgEnv& env, const char* dbName);
+ PgTransaction(const PgConnection&);
+ virtual ~PgTransaction(); // close connection and clean up
+
+protected:
+ ExecStatusType BeginTransaction();
+ ExecStatusType EndTransaction();
+
+protected:
+ PgTransaction() : PgDatabase() {} // Do not connect
+}; // End PgTransaction Class Declaration
+
+#endif // PGTRANSDB_H