OPAL
Version 3.10.10
|
#include <im.h>
Data Structures | |
class | CompositionIndicationTimeout_Work |
class | IM_Work |
class | MessageSent_Work |
class | NewConversation_Work |
class | NewConversationCallBack |
class | NewIncomingIM_Work |
Public Types | |
typedef PNotifierTemplate < OpalIMContext & > | NewConversationNotifier |
Public Member Functions | |
OpalIMManager (OpalManager &manager) | |
~OpalIMManager () | |
OpalIMContext::SentStatus | OnIncomingMessage (OpalIM *im, PString &conversationId, PSafePtr< OpalConnection > conn=NULL) |
void | OnCompositionIndicationTimeout (const PString &conversationId) |
void | AddContext (PSafePtr< OpalIMContext > context) |
void | RemoveContext (OpalIMContext *context) |
void | GarbageCollection () |
PSafePtr< OpalIMContext > | FindContextByIdWithLock (const PString &key, PSafetyMode mode=PSafeReadWrite) |
PSafePtr< OpalIMContext > | FindContextByNamesWithLock (const PString &local, const PString &remote, PSafetyMode mode=PSafeReadWrite) |
PSafePtr< OpalIMContext > | FindContextForMessageWithLock (OpalIM &im, OpalConnection *conn=NULL) |
void | AddNotifier (const NewConversationNotifier ¬ifier, const PString &scheme) |
bool | RemoveNotifier (const NewConversationNotifier ¬ifier, const PString &scheme) |
void | AddWork (IM_Work *work) |
virtual void | InternalOnNewConversation (const PString &conversation) |
virtual void | InternalOnNewIncomingIM (const PString &conversation) |
virtual void | InternalOnMessageSent (const PString &conversation, const OpalIMContext::MessageSentInfo &info) |
virtual void | InternalOnCompositionIndicationTimeout (const PString &conversationId) |
Protected Types | |
typedef PSafeDictionary < PString, OpalIMContext > | ContextsByConversationId |
typedef std::multimap < std::string, PString > | ContextsByNames |
Protected Attributes | |
PQueuedThreadPool< IM_Work > | m_imThreadPool |
PTime | m_lastGarbageCollection |
OpalManager & | m_manager |
bool | m_deleting |
ContextsByConversationId | m_contextsByConversationId |
PMutex | m_contextsByNamesMutex |
ContextsByNames | m_contextsByNames |
PMutex | m_notifierMutex |
PList< NewConversationCallBack > | m_callbacks |
|
protected |
|
protected |
typedef PNotifierTemplate<OpalIMContext &> OpalIMManager::NewConversationNotifier |
OpalIMManager::OpalIMManager | ( | OpalManager & | manager | ) |
OpalIMManager::~OpalIMManager | ( | ) |
void OpalIMManager::AddContext | ( | PSafePtr< OpalIMContext > | context | ) |
void OpalIMManager::AddNotifier | ( | const NewConversationNotifier & | notifier, |
const PString & | scheme | ||
) |
void OpalIMManager::AddWork | ( | IM_Work * | work | ) |
PSafePtr<OpalIMContext> OpalIMManager::FindContextByIdWithLock | ( | const PString & | key, |
PSafetyMode | mode = PSafeReadWrite |
||
) |
PSafePtr<OpalIMContext> OpalIMManager::FindContextByNamesWithLock | ( | const PString & | local, |
const PString & | remote, | ||
PSafetyMode | mode = PSafeReadWrite |
||
) |
PSafePtr<OpalIMContext> OpalIMManager::FindContextForMessageWithLock | ( | OpalIM & | im, |
OpalConnection * | conn = NULL |
||
) |
void OpalIMManager::GarbageCollection | ( | ) |
|
virtual |
Referenced by OpalIMManager::CompositionIndicationTimeout_Work::Work().
|
virtual |
Referenced by OpalIMManager::MessageSent_Work::Work().
|
virtual |
Referenced by OpalIMManager::NewConversation_Work::Work().
|
virtual |
Referenced by OpalIMManager::NewIncomingIM_Work::Work().
void OpalIMManager::OnCompositionIndicationTimeout | ( | const PString & | conversationId | ) |
OpalIMContext::SentStatus OpalIMManager::OnIncomingMessage | ( | OpalIM * | im, |
PString & | conversationId, | ||
PSafePtr< OpalConnection > | conn = NULL |
||
) |
void OpalIMManager::RemoveContext | ( | OpalIMContext * | context | ) |
bool OpalIMManager::RemoveNotifier | ( | const NewConversationNotifier & | notifier, |
const PString & | scheme | ||
) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |