diff options
author | Constantin Michael <constantin@codesynthesis.com> | 2011-09-19 10:43:42 +0200 |
---|---|---|
committer | Constantin Michael <constantin@codesynthesis.com> | 2011-09-19 10:43:42 +0200 |
commit | f1de6d3f15de3239f5e95587e3486ab6e86e3e78 (patch) | |
tree | 6a5436e25abf18534c0946b3d877f63531781dcd /odb/oracle/statement.hxx | |
parent | 946c283a971f09a4d1f72066d17a684f62f51d88 (diff) |
Refactor stream_lobs so that base statement class does not maintain state
Diffstat (limited to 'odb/oracle/statement.hxx')
-rw-r--r-- | odb/oracle/statement.hxx | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/odb/oracle/statement.hxx b/odb/oracle/statement.hxx index 8d0b491..d942e82 100644 --- a/odb/oracle/statement.hxx +++ b/odb/oracle/statement.hxx @@ -55,14 +55,11 @@ namespace odb // Stream the result LOBs, calling user callbacks where necessary. // void - stream_result_lobs (); + stream_result (bind*, std::size_t count); protected: connection& conn_; auto_handle<OCIStmt> stmt_; - - bind* result_binds_; - std::size_t count_; }; class LIBODB_ORACLE_EXPORT select_statement: public statement @@ -95,6 +92,12 @@ namespace odb fetch (); void + stream_result () + { + statement::stream_result (data_.bind, data_.count); + } + + void free_result (); private: @@ -102,6 +105,7 @@ namespace odb select_statement& operator= (const select_statement&); private: + binding& data_; bool done_; }; |