00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #include "pqxx/compiler-public.hxx"
00020 #include "pqxx/compiler-internal-pre.hxx"
00021
00022 #include "pqxx/dbtransaction"
00023
00024
00025
00026
00027
00028
00029
00030 namespace pqxx
00031 {
00032
00037
00038 class PQXX_LIBEXPORT subtransaction :
00039 public internal::transactionfocus,
00040 public dbtransaction
00041 {
00042 public:
00043 explicit subtransaction(dbtransaction &T,
00044 const PGSTD::string &Name=PGSTD::string());
00045
00046 private:
00047 virtual void do_begin();
00048 virtual void do_commit();
00049 virtual void do_abort();
00050
00051 void check_backendsupport() const;
00052
00053 dbtransaction &m_parent;
00054 };
00055
00057
00058 }
00059
00060
00061 #include "pqxx/compiler-internal-post.hxx"