aboutsummaryrefslogtreecommitdiff
path: root/odb/pgsql/simple-object-result.txx
diff options
context:
space:
mode:
Diffstat (limited to 'odb/pgsql/simple-object-result.txx')
-rw-r--r--odb/pgsql/simple-object-result.txx14
1 files changed, 8 insertions, 6 deletions
diff --git a/odb/pgsql/simple-object-result.txx b/odb/pgsql/simple-object-result.txx
index f1fdd7e..02d8e6d 100644
--- a/odb/pgsql/simple-object-result.txx
+++ b/odb/pgsql/simple-object-result.txx
@@ -37,10 +37,12 @@ namespace odb
object_result_impl<T>::
object_result_impl (const query_base&,
details::shared_ptr<select_statement> statement,
- statements_type& statements)
+ statements_type& statements,
+ const schema_version_migration* svm)
: base_type (statements.connection ()),
statement_ (statement),
statements_ (statements),
+ tc_ (svm),
count_ (0)
{
}
@@ -60,7 +62,7 @@ namespace odb
object_traits::callback (this->db_, obj, callback_event::pre_load);
typename object_traits::image_type& i (statements_.image ());
- object_traits::init (obj, i, &this->db_);
+ tc_.init (obj, i, &this->db_);
// Initialize the id image and binding and load the rest of the object
// (containers, etc).
@@ -77,7 +79,7 @@ namespace odb
}
object_traits::load_ (statements_, obj);
- statements_.load_delayed ();
+ statements_.load_delayed (tc_.version ());
l.unlock ();
object_traits::callback (this->db_, obj, callback_event::post_load);
}
@@ -118,7 +120,7 @@ namespace odb
if (im.version != statements_.select_image_version ())
{
binding& b (statements_.select_image_binding ());
- object_traits::bind (b.bind, im, statement_select);
+ tc_.bind (b.bind, im, statement_select);
statements_.select_image_version (im.version);
b.version++;
}
@@ -127,13 +129,13 @@ namespace odb
if (r == select_statement::truncated)
{
- if (object_traits::grow (im, statements_.select_image_truncated ()))
+ if (tc_.grow (im, statements_.select_image_truncated ()))
im.version++;
if (im.version != statements_.select_image_version ())
{
binding& b (statements_.select_image_binding ());
- object_traits::bind (b.bind, im, statement_select);
+ tc_.bind (b.bind, im, statement_select);
statements_.select_image_version (im.version);
b.version++;
statement_->reload ();