00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef __CODEX_KEYSERVICE_DECORATEDCLIENTMESSAGEEVENT_H__
00022 #define __CODEX_KEYSERVICE_DECORATEDCLIENTMESSAGEEVENT_H__
00023
00024 #include "ClientMessageEvent.h"
00025
00026 namespace CODEX_KeyService
00027 {
00042 template< class MT >
00043 class DecoratedClientMessageEvent : public ClientMessageEvent< MT >
00044 {
00045 public :
00047 DecoratedClientMessageEvent( CODEX_Events::Activity* source,
00048 ClientMessageHandler* destination,
00049 const unsigned char* server,
00050 const unsigned char* mID ) :
00051 ClientMessageEvent< MT >( source, destination ),
00052 m_server( server ),
00053 m_mID( mID )
00054 {}
00055
00057 virtual ~DecoratedClientMessageEvent() {}
00058
00059 bool handle() { return m_destination->handler( *this ); }
00060
00062 const unsigned char* server() const { return m_server; }
00063
00065 const unsigned char* mID() const { return m_mID; }
00066
00067 private :
00068 const unsigned char* m_server;
00069 const unsigned char* m_mID;
00070 };
00071
00072 }
00073
00074 #endif