diff options
| author | Denys Vlasenko <vda.linux@googlemail.com> | 2009-08-24 04:56:07 +0200 |
|---|---|---|
| committer | Denys Vlasenko <vda.linux@googlemail.com> | 2009-08-24 04:56:07 +0200 |
| commit | dcfbdc5844474ef8e577d5f1c2bfd2e71c43e5fc (patch) | |
| tree | 9d53e9d34e0d7288d14b73e4642ed60ccbabf77e /src/Daemon | |
| parent | 677cd7bcd2ec48d7ffd756ee8cf33a9de06a32de (diff) | |
| download | abrt-dcfbdc5844474ef8e577d5f1c2bfd2e71c43e5fc.tar.gz abrt-dcfbdc5844474ef8e577d5f1c2bfd2e71c43e5fc.tar.xz abrt-dcfbdc5844474ef8e577d5f1c2bfd2e71c43e5fc.zip | |
simplifications by exposing g_pPluginManager
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'src/Daemon')
| -rw-r--r-- | src/Daemon/CrashWatcher.cpp | 10 | ||||
| -rw-r--r-- | src/Daemon/Daemon.cpp | 2 | ||||
| -rw-r--r-- | src/Daemon/MiddleWare.cpp | 85 | ||||
| -rw-r--r-- | src/Daemon/MiddleWare.h | 39 |
4 files changed, 37 insertions, 99 deletions
diff --git a/src/Daemon/CrashWatcher.cpp b/src/Daemon/CrashWatcher.cpp index ca6ff43..3596664 100644 --- a/src/Daemon/CrashWatcher.cpp +++ b/src/Daemon/CrashWatcher.cpp @@ -253,7 +253,7 @@ vector_map_string_string_t CCrashWatcher::GetPluginsInfo() { try { - return ::GetPluginsInfo(); + return g_pPluginManager->GetPluginsInfo(); } catch (CABRTException &e) { @@ -272,7 +272,7 @@ map_plugin_settings_t CCrashWatcher::GetPluginSettings(const std::string& pName, { try { - return ::GetPluginSettings(pName, pUID); + return g_pPluginManager->GetPluginSettings(pName, pUID); } catch(CABRTException &e) { @@ -291,7 +291,7 @@ void CCrashWatcher::RegisterPlugin(const std::string& pName) { try { - ::RegisterPlugin(pName); + g_pPluginManager->RegisterPlugin(pName); } catch(CABRTException &e) { @@ -307,7 +307,7 @@ void CCrashWatcher::UnRegisterPlugin(const std::string& pName) { try { - ::UnRegisterPlugin(pName); + g_pPluginManager->UnRegisterPlugin(pName); } catch(CABRTException &e) { @@ -323,7 +323,7 @@ void CCrashWatcher::SetPluginSettings(const std::string& pName, const std::strin { try { - ::SetPluginSettings(pName, pUID, pSettings); + g_pPluginManager->SetPluginSettings(pName, pUID, pSettings); } catch(CABRTException &e) { diff --git a/src/Daemon/Daemon.cpp b/src/Daemon/Daemon.cpp index 48d6988..2911a40 100644 --- a/src/Daemon/Daemon.cpp +++ b/src/Daemon/Daemon.cpp @@ -168,7 +168,7 @@ static void SetUpMW() CSettings::set_strings_t::iterator it_p; for (it_p = enabledPlugins.begin(); it_p != enabledPlugins.end(); it_p++) { - ::RegisterPlugin(*it_p); + g_pPluginManager->RegisterPlugin(*it_p); } CSettings::vector_pair_strings_t actionsAndReporters = g_pSettings->GetActionsAndReporters(); CSettings::vector_pair_strings_t::iterator it_ar; diff --git a/src/Daemon/MiddleWare.cpp b/src/Daemon/MiddleWare.cpp index ac80d6b..c3a362a 100644 --- a/src/Daemon/MiddleWare.cpp +++ b/src/Daemon/MiddleWare.cpp @@ -31,7 +31,9 @@ * with plugins, it calls the plugin manager. * @see PluginManager.h */ -static CPluginManager* m_pPluginManager; +CPluginManager* g_pPluginManager; + + /** * An instance of CRPM used for package checking. * @see RPM.h @@ -57,10 +59,6 @@ static map_analyzer_actions_and_reporters_t m_mapAnalyzerActionsAndReporters; */ static vector_pair_string_string_t m_vectorActionsAndReporters; /** - * Plugins configuration directory (e.g. /etc/abrt/plugins, ...). - */ -static std::string m_sPluginsConfDir; -/** * Check GPG finger print? */ static bool m_bOpenGPGCheck; @@ -72,16 +70,15 @@ static void RunAnalyzerActions(const std::string& pAnalyzer, const std::string& void CMiddleWare(const std::string& pPluginsConfDir, const std::string& pPluginsLibDir) { - m_sPluginsConfDir = pPluginsConfDir; m_bOpenGPGCheck = true; - m_pPluginManager = new CPluginManager(pPluginsConfDir, pPluginsLibDir); - m_pPluginManager->LoadPlugins(); + g_pPluginManager = new CPluginManager(pPluginsConfDir, pPluginsLibDir); + g_pPluginManager->LoadPlugins(); } void CMiddleWare_deinit() { - m_pPluginManager->UnLoadPlugins(); - delete m_pPluginManager; + g_pPluginManager->UnLoadPlugins(); + delete g_pPluginManager; } /** @@ -150,29 +147,6 @@ static void DebugDumpToCrashReport(const std::string& pDebugDumpDir, map_crash_r dd.Close(); } -void RegisterPlugin(const std::string& pName) -{ - m_pPluginManager->RegisterPlugin(pName); -} - -void UnRegisterPlugin(const std::string& pName) -{ - m_pPluginManager->UnRegisterPlugin(pName); -} - -void SetPluginSettings(const std::string& pName, - const std::string& pUID, - const map_plugin_settings_t& pSettings) -{ - m_pPluginManager->SetPluginSettings(pName, pUID, pSettings); -} - -map_plugin_settings_t GetPluginSettings(const std::string& pName, - const std::string& pUID) -{ - return m_pPluginManager->GetPluginSettings(pName, pUID); -} - /** * Get a local UUID from particular analyzer plugin. * @param pAnalyzer A name of an analyzer plugin. @@ -182,7 +156,7 @@ map_plugin_settings_t GetPluginSettings(const std::string& pName, static std::string GetLocalUUID(const std::string& pAnalyzer, const std::string& pDebugDumpDir) { - CAnalyzer* analyzer = m_pPluginManager->GetAnalyzer(pAnalyzer); + CAnalyzer* analyzer = g_pPluginManager->GetAnalyzer(pAnalyzer); return analyzer->GetLocalUUID(pDebugDumpDir); } @@ -195,7 +169,7 @@ static std::string GetLocalUUID(const std::string& pAnalyzer, static std::string GetGlobalUUID(const std::string& pAnalyzer, const std::string& pDebugDumpDir) { - CAnalyzer* analyzer = m_pPluginManager->GetAnalyzer(pAnalyzer); + CAnalyzer* analyzer = g_pPluginManager->GetAnalyzer(pAnalyzer); return analyzer->GetGlobalUUID(pDebugDumpDir); } @@ -209,7 +183,7 @@ static std::string GetGlobalUUID(const std::string& pAnalyzer, static void CreateReport(const std::string& pAnalyzer, const std::string& pDebugDumpDir) { - CAnalyzer* analyzer = m_pPluginManager->GetAnalyzer(pAnalyzer); + CAnalyzer* analyzer = g_pPluginManager->GetAnalyzer(pAnalyzer); analyzer->CreateReport(pDebugDumpDir); } @@ -217,7 +191,7 @@ mw_result_t CreateCrashReport(const std::string& pUUID, const std::string& pUID, map_crash_report_t& pCrashReport) { - CDatabase* database = m_pPluginManager->GetDatabase(m_sDatabase); + CDatabase* database = g_pPluginManager->GetDatabase(m_sDatabase); database_row_t row; database->Connect(); row = database->GetUUIDData(pUUID, pUID); @@ -280,7 +254,7 @@ void RunAction(const std::string& pActionDir, { try { - CAction* action = m_pPluginManager->GetAction(pPluginName); + CAction* action = g_pPluginManager->GetAction(pPluginName); action->Run(pActionDir, pPluginArgs); } @@ -299,17 +273,17 @@ void RunActionsAndReporters(const std::string& pDebugDumpDir) { try { - if (m_pPluginManager->GetPluginType((*it_ar).first) == REPORTER) + if (g_pPluginManager->GetPluginType((*it_ar).first) == REPORTER) { - CReporter* reporter = m_pPluginManager->GetReporter((*it_ar).first); + CReporter* reporter = g_pPluginManager->GetReporter((*it_ar).first); map_crash_report_t crashReport; DebugDumpToCrashReport(pDebugDumpDir, crashReport); reporter->Report(crashReport, (*it_ar).second); } - else if (m_pPluginManager->GetPluginType((*it_ar).first) == ACTION) + else if (g_pPluginManager->GetPluginType((*it_ar).first) == ACTION) { - CAction* action = m_pPluginManager->GetAction((*it_ar).first); + CAction* action = g_pPluginManager->GetAction((*it_ar).first); action->Run(pDebugDumpDir, (*it_ar).second); } } @@ -366,9 +340,9 @@ report_status_t Report(const map_crash_report_t& pCrashReport, { ret_key += " (" + packageName + ")"; } - if (m_pPluginManager->GetPluginType((*it_r).first) == REPORTER) + if (g_pPluginManager->GetPluginType((*it_r).first) == REPORTER) { - CReporter* reporter = m_pPluginManager->GetReporter((*it_r).first); + CReporter* reporter = g_pPluginManager->GetReporter((*it_r).first); std::string home = ""; map_plugin_settings_t oldSettings; map_plugin_settings_t newSettings; @@ -380,7 +354,7 @@ report_status_t Report(const map_crash_report_t& pCrashReport, { oldSettings = reporter->GetSettings(); - if (m_pPluginManager->LoadPluginSettings(home + "/.abrt/" + (*it_r).first + "." + PLUGINS_CONF_EXTENSION, newSettings)) + if (g_pPluginManager->LoadPluginSettings(home + "/.abrt/" + (*it_r).first + "." + PLUGINS_CONF_EXTENSION, newSettings)) { reporter->SetSettings(newSettings); } @@ -409,7 +383,7 @@ report_status_t Report(const map_crash_report_t& pCrashReport, } } - CDatabase* database = m_pPluginManager->GetDatabase(m_sDatabase); + CDatabase* database = g_pPluginManager->GetDatabase(m_sDatabase); database->Connect(); database->SetReported(UUID, UID, message); database->DisConnect(); @@ -429,7 +403,7 @@ std::string DeleteCrashInfo(const std::string& pUUID, const std::string& pUID) { database_row_t row; - CDatabase* database = m_pPluginManager->GetDatabase(m_sDatabase); + CDatabase* database = g_pPluginManager->GetDatabase(m_sDatabase); database->Connect(); row = database->GetUUIDData(pUUID, pUID); database->Delete(pUUID, pUID); @@ -449,7 +423,7 @@ std::string DeleteCrashInfo(const std::string& pUUID, static bool IsDebugDumpSaved(const std::string& pUID, const std::string& pDebugDumpDir) { - CDatabase* database = m_pPluginManager->GetDatabase(m_sDatabase); + CDatabase* database = g_pPluginManager->GetDatabase(m_sDatabase); vector_database_rows_t rows; database->Connect(); rows = database->GetUIDData(pUID); @@ -559,9 +533,9 @@ static void RunAnalyzerActions(const std::string& pAnalyzer, const std::string& { try { - if (m_pPluginManager->GetPluginType((*it_a).first) == ACTION) + if (g_pPluginManager->GetPluginType((*it_a).first) == ACTION) { - CAction* action = m_pPluginManager->GetAction((*it_a).first); + CAction* action = g_pPluginManager->GetAction((*it_a).first); action->Run(pDebugDumpDir, (*it_a).second); } @@ -593,7 +567,7 @@ static mw_result_t SaveDebugDumpToDatabase(const std::string& pUUID, map_crash_info_t& pCrashInfo) { mw_result_t res; - CDatabase* database = m_pPluginManager->GetDatabase(m_sDatabase); + CDatabase* database = g_pPluginManager->GetDatabase(m_sDatabase); database_row_t row; database->Connect(); database->Insert(pUUID, pUID, pDebugDumpDir, pTime); @@ -669,7 +643,7 @@ mw_result_t GetCrashInfo(const std::string& pUUID, map_crash_info_t& pCrashInfo) { pCrashInfo.clear(); - CDatabase* database = m_pPluginManager->GetDatabase(m_sDatabase); + CDatabase* database = g_pPluginManager->GetDatabase(m_sDatabase); database_row_t row; database->Connect(); row = database->GetUUIDData(pUUID, pUID); @@ -714,7 +688,7 @@ mw_result_t GetCrashInfo(const std::string& pUUID, vector_pair_string_string_t GetUUIDsOfCrash(const std::string& pUID) { - CDatabase* database = m_pPluginManager->GetDatabase(m_sDatabase); + CDatabase* database = g_pPluginManager->GetDatabase(m_sDatabase); vector_database_rows_t rows; database->Connect(); rows = database->GetUIDData(pUID); @@ -730,11 +704,6 @@ vector_pair_string_string_t GetUUIDsOfCrash(const std::string& pUID) return UUIDsUIDs; } -vector_map_string_string_t GetPluginsInfo() -{ - return m_pPluginManager->GetPluginsInfo(); -} - void SetOpenGPGCheck(bool pCheck) { m_bOpenGPGCheck = pCheck; diff --git a/src/Daemon/MiddleWare.h b/src/Daemon/MiddleWare.h index 4b15af3..d744f5d 100644 --- a/src/Daemon/MiddleWare.h +++ b/src/Daemon/MiddleWare.h @@ -56,45 +56,14 @@ typedef enum { typedef std::map<std::string, vector_strings_t> report_status_t; typedef std::map<std::string, vector_pair_string_string_t> map_analyzer_actions_and_reporters_t; + +extern CPluginManager* g_pPluginManager; + + void CMiddleWare(const std::string& pPluginsConfDir, const std::string& pPluginsLibDir); void CMiddleWare_deinit(); /** - * Register particular plugin. - * @param pName A plugin name. - */ -void RegisterPlugin(const std::string& pName); -/** - * A method, which unregister particular plugin. - * @param pName A plugin name. - */ -void UnRegisterPlugin(const std::string& pName); -/** - * A method, which sets up a plugin. The settings are also saved in home - * directory of an user. - * @param pName A plugin name. - * @param pUID An uid of user. - * @param pSettings A plugin's settings. - */ -void SetPluginSettings(const std::string& pName, - const std::string& pUID, - const map_plugin_settings_t& pSettings); -/** - * A method, which returns plugin's settings according to user. - * @param pName A plugin name. - * @param pUID An uid of user. - * @return Plugin's settings accorting to user. - */ -map_plugin_settings_t GetPluginSettings(const std::string& pName, - const std::string& pUID); -/** - * A method, which gets all plugins info (event those plugins which are - * disabled). It can be send via DBus to GUI and displayed to an user. - * Then a user can fill all needed informations like URLs etc. - * @return A vector of maps <key, vaule>. - */ -vector_map_string_string_t GetPluginsInfo(); -/** * A method, which takes care of getting all additional data needed * for computing UUIDs and creating a report for particular analyzer * plugin. This report could be send somewhere afterwards. If a creation |
