aboutsummaryrefslogtreecommitdiff
path: root/odb/sqlite/statement-cache.hxx
diff options
context:
space:
mode:
authorBoris Kolpackov <boris@codesynthesis.com>2021-04-29 11:55:45 +0200
committerBoris Kolpackov <boris@codesynthesis.com>2021-04-30 10:07:08 +0200
commitfa3f14db14671b4c37c400880d097b17aa12b824 (patch)
tree6b516f01505cd743c01d714329068fcd56233f73 /odb/sqlite/statement-cache.hxx
parent2c15821eb8a9d6a7f79b7194b23d84dd8bb773c7 (diff)
Move begin/commit/rollback statements to connection
Diffstat (limited to 'odb/sqlite/statement-cache.hxx')
-rw-r--r--odb/sqlite/statement-cache.hxx54
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_;
};
}