Collaboration diagram for org::xmlBlaster::util::queue::QueueFactory:
Public Member Functions | |
~QueueFactory () | |
I_Queue & | getPlugin (org::xmlBlaster::util::Global &global, org::xmlBlaster::util::qos::storage::QueuePropertyBase &property, std::string &type="", std::string &version="") |
Creates a queue implementation. | |
void | releasePlugin (I_Queue *queueP) |
After calling this the queue argument in not usable anymore. | |
Static Public Member Functions | |
static QueueFactory & | getFactory () |
Static access to the factory. | |
Friends | |
class | org::xmlBlaster::util::Global |
You may use this as the interface to implement your own persistent, RAM or cache based queues.
It is a singleton class and has for that reason private constructors, destructor and assignment operator. To get a reference to the singleton instance you must invoke getFactory(...).
Definition at line 27 of file QueueFactory.h.
org::xmlBlaster::util::queue::QueueFactory::~QueueFactory | ( | ) |
Definition at line 59 of file QueueFactory.cpp.
QueueFactory & org::xmlBlaster::util::queue::QueueFactory::getFactory | ( | ) | [static] |
Static access to the factory.
XmlBlasterException |
Definition at line 34 of file QueueFactory.cpp.
References org::xmlBlaster::util::Object_Lifetime_Manager::instance(), and org::xmlBlaster::util::Object_Lifetime_Manager::manage_object().
Referenced by org::xmlBlaster::util::queue::CacheQueuePlugin::CacheQueuePlugin(), org::xmlBlaster::test::TestQueue::destroyQueue(), org::xmlBlaster::util::dispatch::ConnectionsHandler::flushQueue(), org::xmlBlaster::util::dispatch::ConnectionsHandler::getQueue(), org::xmlBlaster::util::dispatch::ConnectionsHandler::queueConnect(), org::xmlBlaster::util::dispatch::ConnectionsHandler::queuePublish(), org::xmlBlaster::util::dispatch::ConnectionsHandler::queueSubscribe(), org::xmlBlaster::test::TestQueue::tearDown(), org::xmlBlaster::test::TestQueue::testMaxNumOfBytes(), org::xmlBlaster::test::TestQueue::testMaxNumOfEntries(), org::xmlBlaster::test::TestQueue::testOrder(), org::xmlBlaster::test::TestQueue::testWithOneConnectEntry(), org::xmlBlaster::test::TestQueue::testWithOnePublishEntry(), and org::xmlBlaster::util::queue::CacheQueuePlugin::~CacheQueuePlugin().
I_Queue& org::xmlBlaster::util::queue::QueueFactory::getPlugin | ( | org::xmlBlaster::util::Global & | global, | |
org::xmlBlaster::util::qos::storage::QueuePropertyBase & | property, | |||
std::string & | type = "" , |
|||
std::string & | version = "" | |||
) |
Creates a queue implementation.
It is the responsibility of the user to delete the I_Queue object once it is not needed anymore by calling releasePlugin()
.
property | The configuration settings | |
type | The queue type, for example "RAM", "SQLite", if empty the setting from argument 'property' is used | |
version | The queue version, defaults to "1.0", if empty the setting from argument 'property' is used |
XmlBlasterException,: | "resource.configuration.pluginFailed" if plugin is not known or other errorCodes if it can't be initialized. |
Referenced by org::xmlBlaster::util::queue::CacheQueuePlugin::CacheQueuePlugin(), org::xmlBlaster::test::TestQueue::destroyQueue(), org::xmlBlaster::util::dispatch::ConnectionsHandler::flushQueue(), org::xmlBlaster::util::dispatch::ConnectionsHandler::getQueue(), org::xmlBlaster::util::dispatch::ConnectionsHandler::queueConnect(), org::xmlBlaster::util::dispatch::ConnectionsHandler::queuePublish(), org::xmlBlaster::util::dispatch::ConnectionsHandler::queueSubscribe(), org::xmlBlaster::test::TestQueue::testMaxNumOfBytes(), org::xmlBlaster::test::TestQueue::testMaxNumOfEntries(), org::xmlBlaster::test::TestQueue::testOrder(), org::xmlBlaster::test::TestQueue::testWithOneConnectEntry(), and org::xmlBlaster::test::TestQueue::testWithOnePublishEntry().
void org::xmlBlaster::util::queue::QueueFactory::releasePlugin | ( | I_Queue * | queueP | ) |
After calling this the queue
argument in not usable anymore.
Definition at line 95 of file QueueFactory.cpp.
Referenced by org::xmlBlaster::test::TestQueue::destroyQueue(), org::xmlBlaster::test::TestQueue::tearDown(), and org::xmlBlaster::util::queue::CacheQueuePlugin::~CacheQueuePlugin().
friend class org::xmlBlaster::util::Global [friend] |
Definition at line 28 of file QueueFactory.h.