⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 queuefactory.h

📁 java开源的企业总线.xmlBlaster
💻 H
字号:
/*-----------------------------------------------------------------------------Name:      QueueFactory.hProject:   xmlBlaster.orgCopyright: xmlBlaster.org, see xmlBlaster-LICENSE fileComment:   Factory to create different queue implementations-----------------------------------------------------------------------------*/#ifndef _UTIL_PARSER_PARSERFACTORY_H#define _UTIL_PARSER_PARSERFACTORY_H#include <util/xmlBlasterDef.h>#include <util/queue/I_Queue.h>#include <util/qos/storage/QueuePropertyBase.h>#include <util/Global.h>namespace org { namespace xmlBlaster { namespace util { namespace queue {    /** * Abstraction for the queue implementations.  * <p /> * You may use this as the interface to implement your own persistent, RAM or cache based queues. * <p /> * 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(...). */class Dll_Export QueueFactory {   friend class org::xmlBlaster::util::Global; // g++ 2.95.3 warning: `class org::xmlBlaster::util::queue::QueueFactory' only defines private constructors and has no friends   private:   const std::string ME;   static QueueFactory* factory_;      QueueFactory();   QueueFactory(const QueueFactory& factory);   QueueFactory& operator =(const QueueFactory& factory);   public:   ~QueueFactory();   /**    * Static access to the factory.     * @exception XmlBlasterException    */   static QueueFactory& getFactory();   /**    * 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 <code>releasePlugin()</code>.     * @param property The configuration settings    * @param type The queue type, for example "RAM", "SQLite", if empty the setting from argument 'property' is used    * @param version The queue version, defaults to "1.0", if empty the setting from argument 'property' is used    * @throws XmlBlasterException: "resource.configuration.pluginFailed" if plugin is not known or other errorCodes if it can't be initialized.     */   I_Queue& getPlugin(org::xmlBlaster::util::Global& global, const org::xmlBlaster::util::qos::storage::QueuePropertyBase& property,                      const std::string& type="", const std::string& version="");   /**    * After calling this the <code>queue</code> argument in not usable anymore.     */   void releasePlugin(I_Queue *queueP); /*const std::string& type="RAM", const std::string& version="1.0");*/};}}}} // namespace#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -