version 1.33, 2011/01/25 11:24:30
|
version 1.34, 2011/02/22 14:08:31
|
|
|
This method is called when indication in the form of | This method is called when indication in the form of |
CIMHandleIndicationRequestMessage arrives to HandlerService from | CIMHandleIndicationRequestMessage arrives to HandlerService from |
IndicationService. This method sets the sequence-identfier to the | IndicationService. This method sets the sequence-identfier to the |
indication. Returns DestinationQueue name to which the indication |
indication and enqueues the indication into the destination queue. |
belongs. |
|
*/ | */ |
String _setSequenceIdentifier( |
void _setSequenceIdentifierAndEnqueue( |
CIMHandleIndicationRequestMessage *message); | CIMHandleIndicationRequestMessage *message); |
| |
/** | /** |
This method is called from _setSequenceIdentifier(). This method |
Starts the dispatcher thread. |
actually sets the sequence-identfier properties SequenceContext |
|
and SequenceNumber to the indication. |
|
*/ | */ |
void _setSequenceIndentifierProperties( |
void _startDispatcher(); |
CIMInstance &indication, DestinationQueue *queue); |
|
| |
/** | /** |
This method is called when indication delivery has failed. | This method is called when indication delivery has failed. |
|
|
String _getQueueName( | String _getQueueName( |
const CIMObjectPath &instancePath); | const CIMObjectPath &instancePath); |
| |
void _updateSuccessfulDeliveryTime(const String &queueName); |
|
|
|
typedef HashTable< | typedef HashTable< |
String, | String, |
DestinationQueue*, | DestinationQueue*, |
|
|
| |
AtomicInt _deliveryThreadsRunningCount; | AtomicInt _deliveryThreadsRunningCount; |
AtomicInt _dispatcherThreadRunning; | AtomicInt _dispatcherThreadRunning; |
Mutex _dispatcherThreadMutex; |
|
List<IndicationInfo, Mutex> _deliveryQueue; | List<IndicationInfo, Mutex> _deliveryQueue; |
ThreadPool _deliveryThreadPool; | ThreadPool _deliveryThreadPool; |
Thread _dispatcherThread; | Thread _dispatcherThread; |
AtomicInt _stopDispatcherThread; | AtomicInt _stopDispatcherThread; |
const Uint32 _maxDeliveryThreads; | const Uint32 _maxDeliveryThreads; |
|
Semaphore _dispatcherWaitSemaphore; |
static ThreadReturnType PEGASUS_THREAD_CDECL | static ThreadReturnType PEGASUS_THREAD_CDECL |
_dispatcherRoutine(void *param); | _dispatcherRoutine(void *param); |
static ThreadReturnType PEGASUS_THREAD_CDECL _deliveryRoutine(void *param); | static ThreadReturnType PEGASUS_THREAD_CDECL _deliveryRoutine(void *param); |