diff options
author | Bernard Normier <bernard@zeroc.com> | 2007-05-30 13:18:35 +0000 |
---|---|---|
committer | Bernard Normier <bernard@zeroc.com> | 2007-05-30 13:18:35 +0000 |
commit | cd8abbb04a79b0d93f34742c49b06607e4e989f7 (patch) | |
tree | fabe04903dac6bd3ecf2ac6f3248ab5c22300fa7 /cpp/src/Freeze/TransactionI.h | |
parent | fix problem with possible use of uninitialized local variable (diff) | |
download | ice-cd8abbb04a79b0d93f34742c49b06607e4e989f7.tar.bz2 ice-cd8abbb04a79b0d93f34742c49b06607e4e989f7.tar.xz ice-cd8abbb04a79b0d93f34742c49b06607e4e989f7.zip |
Removed transactional evictor context
Diffstat (limited to 'cpp/src/Freeze/TransactionI.h')
-rw-r--r-- | cpp/src/Freeze/TransactionI.h | 29 |
1 files changed, 23 insertions, 6 deletions
diff --git a/cpp/src/Freeze/TransactionI.h b/cpp/src/Freeze/TransactionI.h index 04c44dc68c3..7a7922d1297 100644 --- a/cpp/src/Freeze/TransactionI.h +++ b/cpp/src/Freeze/TransactionI.h @@ -19,16 +19,27 @@ namespace Freeze class ConnectionI; typedef IceUtil::Handle<ConnectionI> ConnectionIPtr; +class PostCompletionCallback : public virtual IceUtil::Shared +{ +public: + + virtual void postCompletion(bool, bool) = 0; +}; +typedef IceUtil::Handle<PostCompletionCallback> PostCompletionCallbackPtr; + + class TransactionI : public Transaction { public: - virtual void - commit(); + virtual void commit(); - virtual void - rollback(); + virtual void rollback(); + + virtual ConnectionPtr getConnection() const; + void setPostCompletionCallback(const PostCompletionCallbackPtr&); + TransactionI(ConnectionI*); ~TransactionI(); @@ -38,14 +49,20 @@ public: return _txn; } + const ConnectionIPtr& + getConnectionI() const + { + return _connection; + } + private: - void - cleanup(); + void postCompletion(bool, bool); ConnectionIPtr _connection; Ice::Int _txTrace; DbTxn* _txn; + PostCompletionCallbackPtr _postCompletionCallback; }; typedef IceUtil::Handle<TransactionI> TransactionIPtr; |