// file : odb/sqlite/transaction-impl.hxx // copyright : Copyright (c) 2009-2013 Code Synthesis Tools CC // license : GNU GPL v2; see accompanying LICENSE file #ifndef ODB_SQLITE_TRANSACTION_IMPL_HXX #define ODB_SQLITE_TRANSACTION_IMPL_HXX #include #include #include #include #include namespace odb { namespace sqlite { class LIBODB_SQLITE_EXPORT transaction_impl: public odb::transaction_impl { public: typedef sqlite::database database_type; typedef sqlite::connection connection_type; enum lock { deferred, immediate, exclusive }; transaction_impl (database_type&, lock); transaction_impl (connection_ptr, lock); virtual ~transaction_impl (); virtual void start (); virtual void commit (); virtual void rollback (); connection_type& connection (); private: connection_ptr connection_; lock lock_; }; } } #include #include #endif // ODB_SQLITE_TRANSACTION_IMPL_HXX