diff options
Diffstat (limited to 'odb/sqlite/statement-cache.hxx')
-rw-r--r-- | odb/sqlite/statement-cache.hxx | 54 |
1 files changed, 3 insertions, 51 deletions
diff --git a/odb/sqlite/statement-cache.hxx b/odb/sqlite/statement-cache.hxx index b42bda4..923b428 100644 --- a/odb/sqlite/statement-cache.hxx +++ b/odb/sqlite/statement-cache.hxx @@ -29,43 +29,9 @@ namespace odb class LIBODB_SQLITE_EXPORT statement_cache { public: - statement_cache (connection&); - - generic_statement& - begin_statement () const - { - return *begin_; - } - - generic_statement& - begin_immediate_statement () const - { - if (!begin_immediate_) - begin_immediate_statement_ (); - - return *begin_immediate_; - } - - generic_statement& - begin_exclusive_statement () const - { - if (!begin_exclusive_) - begin_exclusive_statement_ (); - - return *begin_exclusive_; - } - - generic_statement& - commit_statement () const - { - return *commit_; - } - - generic_statement& - rollback_statement () const - { - return *rollback_; - } + statement_cache (connection& conn) + : conn_ (conn), + version_seq_ (conn.database ().schema_version_sequence ()) {} template <typename T> typename object_traits_impl<T, id_sqlite>::statements_type& @@ -76,26 +42,12 @@ namespace odb find_view (); private: - void - begin_immediate_statement_ () const; - - void - begin_exclusive_statement_ () const; - - private: typedef std::map<const std::type_info*, details::shared_ptr<statements_base>, details::type_info_comparator> map; connection& conn_; unsigned int version_seq_; - - details::shared_ptr<generic_statement> begin_; - mutable details::shared_ptr<generic_statement> begin_immediate_; - mutable details::shared_ptr<generic_statement> begin_exclusive_; - details::shared_ptr<generic_statement> commit_; - details::shared_ptr<generic_statement> rollback_; - map map_; }; } |