ServerQueueManager Class Reference

#include <QueueManager.hpp>

Public Member Functions

 ServerQueueManager ()
 
void terminateServer ()
 
void addToSessionQueue (ServiceMessage &message)
 
void addToNamedQueue (ServiceMessage &message)
 
void pullFromSessionQueue (ServiceMessage &message)
 
void pullFromNamedQueue (ServiceMessage &message)
 
void createSessionQueue (ServiceMessage &message)
 
DataQueuegetSessionQueue (SessionID session)
 
void createSessionQueue (SessionID session)
 
void createUniqueQueue (ServiceMessage &message)
 
void createNamedQueue (ServiceMessage &message)
 
void openNamedQueue (ServiceMessage &message)
 
void queryNamedQueue (ServiceMessage &message)
 
void nestSessionQueue (ServiceMessage &message)
 
void deleteSessionQueue (ServiceMessage &message)
 
void deleteSessionQueue (DataQueue *queue)
 
void deleteNamedQueue (ServiceMessage &message)
 
void clearSessionQueue (ServiceMessage &message)
 
void clearNamedQueue (ServiceMessage &message)
 
void getSessionQueueCount (ServiceMessage &message)
 
void getNamedQueueCount (ServiceMessage &message)
 
void dispatch (ServiceMessage &message)
 
void cleanupProcessResources (SessionID session)
 
bool isStoppable ()
 

Protected Attributes

QueueTable namedQueues
 
QueueTable sessionQueues
 
SysMutex lock
 

Friends

class DataQueue
 
class QueueTable
 

Detailed Description

Definition at line 241 of file QueueManager.hpp.

Constructor & Destructor Documentation

◆ ServerQueueManager()

ServerQueueManager::ServerQueueManager ( )
inline

Definition at line 246 of file QueueManager.hpp.

References SysMutex::create(), and lock.

Member Function Documentation

◆ addToNamedQueue()

void ServerQueueManager::addToNamedQueue ( ServiceMessage message)

◆ addToSessionQueue()

void ServerQueueManager::addToSessionQueue ( ServiceMessage message)

Definition at line 462 of file QueueManager.cpp.

References DataQueue::add(), getSessionQueue(), and ServiceMessage::parameter3.

Referenced by dispatch().

◆ cleanupProcessResources()

void ServerQueueManager::cleanupProcessResources ( SessionID  session)

◆ clearNamedQueue()

void ServerQueueManager::clearNamedQueue ( ServiceMessage message)

◆ clearSessionQueue()

void ServerQueueManager::clearSessionQueue ( ServiceMessage message)

◆ createNamedQueue()

void ServerQueueManager::createNamedQueue ( ServiceMessage message)

◆ createSessionQueue() [1/2]

void ServerQueueManager::createSessionQueue ( ServiceMessage message)

◆ createSessionQueue() [2/2]

void ServerQueueManager::createSessionQueue ( SessionID  session)

◆ createUniqueQueue()

void ServerQueueManager::createUniqueQueue ( ServiceMessage message)

Create a queue with a unique name.

Parameters
messageThe inbound service message.

Definition at line 592 of file QueueManager.cpp.

References QueueTable::add(), DataQueue, QueueTable::locate(), ServiceMessage::nameArg, namedQueues, ServiceMessage::parameter1, and DataQueue::setName().

Referenced by createNamedQueue().

◆ deleteNamedQueue()

◆ deleteSessionQueue() [1/2]

void ServerQueueManager::deleteSessionQueue ( DataQueue queue)

◆ deleteSessionQueue() [2/2]

void ServerQueueManager::deleteSessionQueue ( ServiceMessage message)

◆ dispatch()

◆ getNamedQueueCount()

void ServerQueueManager::getNamedQueueCount ( ServiceMessage message)

◆ getSessionQueue()

DataQueue * ServerQueueManager::getSessionQueue ( SessionID  session)

◆ getSessionQueueCount()

void ServerQueueManager::getSessionQueueCount ( ServiceMessage message)

◆ isStoppable()

bool ServerQueueManager::isStoppable ( )
inline

Definition at line 270 of file QueueManager.hpp.

References QueueTable::isEmpty(), namedQueues, and sessionQueues.

Referenced by APIServerInstance::isStoppable().

◆ nestSessionQueue()

void ServerQueueManager::nestSessionQueue ( ServiceMessage message)

◆ openNamedQueue()

void ServerQueueManager::openNamedQueue ( ServiceMessage message)

◆ pullFromNamedQueue()

void ServerQueueManager::pullFromNamedQueue ( ServiceMessage message)

◆ pullFromSessionQueue()

void ServerQueueManager::pullFromSessionQueue ( ServiceMessage message)

Definition at line 498 of file QueueManager.cpp.

References getSessionQueue(), ServiceMessage::parameter3, and DataQueue::pull().

Referenced by dispatch().

◆ queryNamedQueue()

void ServerQueueManager::queryNamedQueue ( ServiceMessage message)

◆ terminateServer()

void ServerQueueManager::terminateServer ( )

Friends And Related Function Documentation

◆ DataQueue

friend class DataQueue
friend

◆ QueueTable

friend class QueueTable
friend

Definition at line 244 of file QueueManager.hpp.

Member Data Documentation

◆ lock

SysMutex ServerQueueManager::lock
protected

◆ namedQueues

◆ sessionQueues

QueueTable ServerQueueManager::sessionQueues
protected

The documentation for this class was generated from the following files: