Main Page | Namespace List | Class Hierarchy | Class List | File List | Namespace Members | Class Members

it_bus/transaction_identifier.h

00001 #ifndef IT_BUS_TRANSACTION_IDENTIFIER_
00002 #define IT_BUS_TRANSACTION_IDENTIFIER_
00003 //
00004 //      Copyright (c) 2005 IONA Technologies PLC. All Rights Reserved.
00005 //
00006 #include <it_bus/ref_counted_base.h>
00007 #include <it_bus/var.h>
00008 #include <it_bus/string_map.h>
00009 
00010 namespace IT_Bus
00011 {
00012     class TransactionIdentifier;
00013     typedef Var<TransactionIdentifier> TransactionIdentifier_var;
00014     typedef TransactionIdentifier* TransactionIdentifier_ptr;
00015     typedef StringMap<TransactionIdentifier_var> TransactionIdentifierMap;
00016 
00023     class IT_BUS_API TransactionIdentifier : public RefCountedBase
00024     {
00025       public:
00026         virtual ~TransactionIdentifier();
00027 
00037         virtual String
00038         transaction_type()=0;
00039 
00045         virtual TransactionIdentifierMap&
00046         get_associated_tx_ids()=0;
00047 
00048       protected:
00049         // protect against inappropiate construction
00050         TransactionIdentifier();
00051 
00052       private:
00053         TransactionIdentifier(const TransactionIdentifier&);
00054         TransactionIdentifier& operator=(const TransactionIdentifier&);
00055     };
00056 }
00057 #endif 

Generated on Wed Mar 22 12:23:11 2006 for Artix by  doxygen 1.3.9.1