00001 #ifndef IT_BUS_TRANSACTION_IDENTIFIER_
00002 #define IT_BUS_TRANSACTION_IDENTIFIER_
00003
00004
00005
00006
00007 #include <it_bus/transaction_type_alias.h>
00008 #include <it_bus/ref_counted_base.h>
00009 #ifndef IT_MINIMISE_INCLUDES
00010 #include <it_bus/var.h>
00011 #include <it_bus/string_map.h>
00012 #endif
00013
00014 namespace IT_Bus
00015 {
00022 class IT_BUS_API TransactionIdentifier : public RefCountedBase
00023 {
00024 public:
00025 virtual ~TransactionIdentifier();
00026
00036 virtual String
00037 transaction_type()=0;
00038
00044 virtual TransactionIdentifierMap&
00045 get_associated_tx_ids()=0;
00046
00047 protected:
00048
00049 TransactionIdentifier();
00050
00051 private:
00052 TransactionIdentifier(const TransactionIdentifier&);
00053 TransactionIdentifier& operator=(const TransactionIdentifier&);
00054 };
00055 }
00056 #endif