/////////////////////////////////////////////////////////////// // // CDatabaseJobQueueManager::GetQueueFromConnectCommand // // Find existing queue or create new one // Can't fail // /////////////////////////////////////////////////////////////// CDatabaseJobQueue* CDatabaseJobQueueManager::GetQueueFromConnectCommand(const SString& strData) { // Extract queue name from options std::vector<SString> parts; strData.Split("\1", parts); SString strQueueName; GetOption<CDbOptionsMap>(parts[4], "queue", strQueueName); // Find queue with name CDatabaseJobQueue* pQueue = MapFindRef(m_QueueNameMap, strQueueName); if (!pQueue) { // Add new queue pQueue = NewDatabaseJobQueue(); MapSet(m_QueueNameMap, strQueueName, pQueue); } return pQueue; }
/////////////////////////////////////////////////////////////// // // CDatabaseManagerImpl::CDatabaseManagerImpl // // // /////////////////////////////////////////////////////////////// CDatabaseManagerImpl::CDatabaseManagerImpl ( void ) { m_JobQueue = NewDatabaseJobQueue (); }