it_bus/transaction_notification_handler.h

00001 #ifndef IT_BUS_TRANSACTION_NOTIFICATION_HANDLER_
00002 #define IT_BUS_TRANSACTION_NOTIFICATION_HANDLER_
00003 //
00004 //      Copyright (c) 2005 IONA Technologies PLC. All Rights Reserved.
00005 //
00006 #ifndef IT_MINIMISE_INCLUDES
00007 #include <it_bus/transaction_identifier.h>
00008 #endif
00009 #include <it_bus/ref_counted_base.h>
00010 #include <it_bus/transaction_type_alias.h>
00011 
00012 namespace IT_Bus
00013 {
00021     class IT_BUS_API TransactionNotificationHandler : public virtual RefCountedBase
00022     {
00023       public:
00024         virtual ~TransactionNotificationHandler();
00025 
00033         virtual void 
00034         commit_initiated(
00035             TransactionIdentifier_ptr   tx_identifier
00036         )=0;
00037         
00041         virtual void
00042         committed()=0;
00043 
00048         virtual void 
00049         aborted()=0;
00050         
00051       protected:
00052         // protect against inappropiate construction
00053         TransactionNotificationHandler();
00054         
00055       private:
00056         TransactionNotificationHandler(const TransactionNotificationHandler&);
00057         TransactionNotificationHandler& operator=(const TransactionNotificationHandler&);
00058     };
00059     typedef Var<TransactionNotificationHandler> TransactionNotificationHandler_var;
00060     typedef TransactionNotificationHandler* TransactionNotificationHandler_ptr;
00061 
00062 }
00063 #endif 

Generated on Tue Mar 20 15:27:44 2007 for Artix by  doxygen 1.5.1-p1