sipXcallLib home page


DialogEventPublisher.h
Go to the documentation of this file.
1 //
2 // Copyright (C) 2004-2006 SIPfoundry Inc.
3 // Licensed by SIPfoundry under the LGPL license.
4 //
5 // Copyright (C) 2004-2006 Pingtel Corp. All rights reserved.
6 // Licensed to SIPfoundry under a Contributor Agreement.
7 //
8 // $$
10 
11 #ifndef _DialogEventPublisher_h_
12 #define _DialogEventPublisher_h_
13 
14 // SYSTEM INCLUDES
15 
16 // APPLICATION INCLUDES
17 #include <tao/TaoAdaptor.h>
18 #include <net/SipDialogEvent.h>
19 #include <net/SipPublishContentMgr.h>
20 #include <utl/UtlHashMap.h>
21 
22 // DEFINES
23 // MACROS
24 // EXTERNAL FUNCTIONS
25 // EXTERNAL VARIABLES
26 // CONSTANTS
27 // STRUCTS
28 // TYPEDEFS
29 
30 // FORWARD DECLARATIONS
31 class CallManager;
32 class TaoString;
33 
35 
43 {
44 /* //////////////////////////// PUBLIC //////////////////////////////////// */
45 public:
46 /* ============================ CREATORS ================================== */
47 
48  DialogEventPublisher(CallManager* callMgr, SipPublishContentMgr* contentMgr);
49  //:Default constructor
50 
51  virtual
53  //:Destructor
54 
55 /* ============================ MANIPULATORS ============================== */
56 
57  virtual UtlBoolean handleMessage(OsMsg& eventMessage);
58 
59 /* ============================ ACCESSORS ================================= */
60 
61 
62 /* ============================ INQUIRY =================================== */
63 
64 
65 /* //////////////////////////// PROTECTED ///////////////////////////////// */
66 protected:
67  void dumpTaoMessageArgs(unsigned char eventId, TaoString& args);
68 
69  void insertEntry(UtlString& callId, SipDialogEvent* call);
70  SipDialogEvent* getEntry(UtlString& callId);
71  SipDialogEvent* removeEntry(UtlString& callId);
72 
73 /* //////////////////////////// PRIVATE /////////////////////////////////// */
74 private:
75 
77 
78  SipPublishContentMgr* mpSipPublishContentMgr;
79 
80  UtlHashMap mCalls;
81 
82  unsigned long mDialogId;
83 };
84 
85 /* ============================ INLINE METHODS ============================ */
86 
87 #endif // _DialogEventPublisher_h_
SipDialogEvent * removeEntry(UtlString &callId)
Abstract event handler for processing call management event.
Definition: TaoAdaptor.h:41
Class for publishing the dialog state change for each call.
Definition: DialogEventPublisher.h:42
Definition: CallManager.h:69
SipDialogEvent * getEntry(UtlString &callId)
DialogEventPublisher(CallManager *callMgr, SipPublishContentMgr *contentMgr)
Definition: DialogEventPublisher.cpp:40
void insertEntry(UtlString &callId, SipDialogEvent *call)
virtual UtlBoolean handleMessage(OsMsg &eventMessage)
Handle an incoming message.
Definition: DialogEventPublisher.cpp:57
Definition: TaoString.h:24
void dumpTaoMessageArgs(unsigned char eventId, TaoString &args)
Definition: DialogEventPublisher.cpp:386
CallManager * mpCallManager
Definition: DialogEventPublisher.h:76
unsigned long mDialogId
Definition: DialogEventPublisher.h:82
virtual ~DialogEventPublisher()
Definition: DialogEventPublisher.cpp:50
SipPublishContentMgr * mpSipPublishContentMgr
Definition: DialogEventPublisher.h:78
UtlHashMap mCalls
Definition: DialogEventPublisher.h:80