summaryrefslogtreecommitdiffstats
path: root/lib/MiddleWare
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2009-08-06 16:13:53 +0200
committerDenys Vlasenko <vda.linux@googlemail.com>2009-08-06 16:13:53 +0200
commitb64e1671afd1cd1c25604ffb3bf6f681a864b639 (patch)
tree51b5cc057650a469b267f1689ee1e546abd33cf3 /lib/MiddleWare
parent26c6665308b5a99d02308099118b23b2716dacc0 (diff)
downloadabrt-b64e1671afd1cd1c25604ffb3bf6f681a864b639.tar.gz
abrt-b64e1671afd1cd1c25604ffb3bf6f681a864b639.tar.xz
abrt-b64e1671afd1cd1c25604ffb3bf6f681a864b639.zip
move lib/MiddleWare/{ABRTPlugin,DynamicLibrary}.* to src/Daemon/
Diffstat (limited to 'lib/MiddleWare')
-rw-r--r--lib/MiddleWare/ABRTPlugin.cpp86
-rw-r--r--lib/MiddleWare/ABRTPlugin.h113
-rw-r--r--lib/MiddleWare/DynamicLibrary.cpp59
-rw-r--r--lib/MiddleWare/DynamicLibrary.h62
-rw-r--r--lib/MiddleWare/Makefile.am2
5 files changed, 0 insertions, 322 deletions
diff --git a/lib/MiddleWare/ABRTPlugin.cpp b/lib/MiddleWare/ABRTPlugin.cpp
deleted file mode 100644
index f2afa416..00000000
--- a/lib/MiddleWare/ABRTPlugin.cpp
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- ABRTPlugin.cpp
-
- Copyright (C) 2009 Zdenek Prikryl (zprikryl@redhat.com)
- Copyright (C) 2009 RedHat inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-#include "ABRTPlugin.h"
-
-CABRTPlugin::CABRTPlugin(const std::string& pLibPath) :
- m_pDynamicLibrary(NULL),
- m_pPluginInfo(NULL),
- m_pFnPluginNew(NULL)
-{
- m_pDynamicLibrary = new CDynamicLibrary(pLibPath);
- m_pPluginInfo = reinterpret_cast<p_plugin_info_t>(m_pDynamicLibrary->FindSymbol("plugin_info"));
- m_pFnPluginNew = reinterpret_cast<p_fn_plugin_new_t>(m_pDynamicLibrary->FindSymbol("plugin_new"));
-}
-
-CABRTPlugin::~CABRTPlugin()
-{
- if (m_pDynamicLibrary != NULL)
- {
- delete m_pDynamicLibrary;
- }
-}
-
-const std::string& CABRTPlugin::GetVersion()
-{
- return m_pPluginInfo->m_sVersion;
-}
-
-const int CABRTPlugin::GetMagicNumber()
-{
- return m_pPluginInfo->m_nMagicNumber;
-}
-
-const std::string& CABRTPlugin::GetName()
-{
- return m_pPluginInfo->m_sName;
-}
-
-const std::string& CABRTPlugin::GetDescription()
-{
- return m_pPluginInfo->m_sDescription;
-}
-
-const std::string& CABRTPlugin::GetEmail()
-{
- return m_pPluginInfo->m_sEmail;
-}
-
-const std::string& CABRTPlugin::GetWWW()
-{
- return m_pPluginInfo->m_sWWW;
-}
-
-const std::string& CABRTPlugin::GetGTKBuilder()
-{
- return m_pPluginInfo->m_sGTKBuilder;
-}
-
-
-const plugin_type_t CABRTPlugin::GetType()
-{
- return m_pPluginInfo->m_Type;
-}
-
-CPlugin* CABRTPlugin::PluginNew()
-{
- return m_pFnPluginNew();
-}
diff --git a/lib/MiddleWare/ABRTPlugin.h b/lib/MiddleWare/ABRTPlugin.h
deleted file mode 100644
index cdf72bb3..00000000
--- a/lib/MiddleWare/ABRTPlugin.h
+++ /dev/null
@@ -1,113 +0,0 @@
-/*
- ABRTPlugin.h - header file for abrt plugin.
-
- Copyright (C) 2009 Zdenek Prikryl (zprikryl@redhat.com)
- Copyright (C) 2009 RedHat inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-
-#ifndef ABRTPLUGIN_H_
-#define ABRTPLUGIN_H_
-
-#include <string>
-#include "DynamicLibrary.h"
-#include "Plugin.h"
-
-/**
- * CABRTPlugin class. A class which contains a loaded plugin.
- */
-class CABRTPlugin
-{
- private:
-
- typedef const plugin_info_t* p_plugin_info_t;
- typedef CPlugin* (*p_fn_plugin_new_t)();
-
- /**
- * A class containing library which contains plugin functionality.
- * @see DynamicLibrary.h
- */
- CDynamicLibrary* m_pDynamicLibrary;
- /**
- * A pointer to struc containing information about plugin.
- */
- p_plugin_info_t m_pPluginInfo;
- /**
- * A pointer to function, which creates new instances of plugin.
- */
- p_fn_plugin_new_t m_pFnPluginNew;
-
- public:
- /**
- * A constructor.
- * The constructor loads a plugin
- * @param pLibPath a path to a plugin
- */
- CABRTPlugin(const std::string& pLibPath);
- /**
- * A destructor.
- */
- ~CABRTPlugin();
- /**
- * It is used for getting loaded plugin's version.
- * @return plugin version
- */
- const std::string& GetVersion();
- /**
- * It is used for getting loaded plugin's magic number.
- * @return magic number
- */
- const int GetMagicNumber();
- /**
- * It is used for getting loaded plugin's name.
- * @return magic number
- */
- const std::string& GetName();
- /**
- * It is used for getting loaded plugin's description.
- * @return magic number
- */
- const std::string& GetDescription();
- /**
- * It is used for getting an author email of loaded plugin.
- * @return description
- */
- const std::string& GetEmail();
- /**
- * It is used for getting a home page of loaded plugin.
- * @return home page
- */
- const std::string& GetWWW();
- /**
- * It is used for getting a path to gui description.
- * @return home page
- */
- const std::string& GetGTKBuilder();
- /**
- * It is used for getting loaded plugin's type.
- * @return type
- */
- const plugin_type_t GetType();
- /**
- * It is used fot getting of a new instance of loaded plugin
- * @return pointer to new allocated instance of plugin. A caller
- * has to delete it.
- */
- CPlugin* PluginNew();
-};
-
-#endif /*ABRTPLUGIN_H_*/
diff --git a/lib/MiddleWare/DynamicLibrary.cpp b/lib/MiddleWare/DynamicLibrary.cpp
deleted file mode 100644
index ffb2a6e4..00000000
--- a/lib/MiddleWare/DynamicLibrary.cpp
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- DynamicLybrary.cpp
-
- Copyright (C) 2009 Zdenek Prikryl (zprikryl@redhat.com)
- Copyright (C) 2009 RedHat inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-#include "DynamicLibrary.h"
-#include "ABRTException.h"
-#include <iostream>
-#include <dlfcn.h>
-
-CDynamicLibrary::CDynamicLibrary(const std::string& pPath) :
- m_pHandle(NULL)
-{
- Load(pPath);
-}
-
-CDynamicLibrary::~CDynamicLibrary()
-{
- if (m_pHandle != NULL)
- {
- dlclose(m_pHandle);
- m_pHandle = NULL;
- }
-}
-
-void CDynamicLibrary::Load(const std::string& pPath)
-{
- m_pHandle = dlopen(pPath.c_str(), RTLD_NOW);
- if (m_pHandle == NULL)
- {
- throw CABRTException(EXCEP_DL, "CDynamicLibrary::Load(): Cannot load " + pPath + " : " + std::string(dlerror()));
- }
-}
-
-void* CDynamicLibrary::FindSymbol(const std::string& pName)
-{
- void* sym = dlsym(m_pHandle, pName.c_str());
- if (sym == NULL)
- {
- throw CABRTException(EXCEP_DL, "CDynamicLibrary::Load(): Cannot find symbol '" + pName + "'");
- }
- return sym;
-}
diff --git a/lib/MiddleWare/DynamicLibrary.h b/lib/MiddleWare/DynamicLibrary.h
deleted file mode 100644
index f3a95f5d..00000000
--- a/lib/MiddleWare/DynamicLibrary.h
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- DynamicLybrary.h - header file for dynamic lybrarby wraper. It uses libdl.
-
- Copyright (C) 2009 Zdenek Prikryl (zprikryl@redhat.com)
- Copyright (C) 2009 RedHat inc.
-
- This program is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 2 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License along
- with this program; if not, write to the Free Software Foundation, Inc.,
- 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
- */
-
-
-#ifndef DYNAMICLIBRARYH_
-#define DYNAMICLIBRARYH_
-
-#include <string>
-
-/**
- * A class. It contains one dynamic library.
- */
-class CDynamicLibrary
-{
- private:
- /**
- * A pointer to library.
- */
- void* m_pHandle;
- /**
- * A method, which loads a library.
- * @param pPath A path to the library.
- */
- void Load(const std::string& pPath);
- public:
- /**
- * A constructor.
- * @param pPath A path to the library.
- */
- CDynamicLibrary(const std::string& pPath);
- /**
- * A destructor.
- */
- ~CDynamicLibrary();
- /**
- * A method, which tries to find a symbol in a library. If it successes
- * then a non-NULL pointer is returned, otherwise NULL is returned.
- * @param pName A symbol name.
- * @return A pointer where a symbol name is loaded.
- */
- void* FindSymbol(const std::string& pName);
-};
-
-#endif /*DYNAMICLIBRARYH_*/
diff --git a/lib/MiddleWare/Makefile.am b/lib/MiddleWare/Makefile.am
index b84dcba1..8fbb4060 100644
--- a/lib/MiddleWare/Makefile.am
+++ b/lib/MiddleWare/Makefile.am
@@ -1,8 +1,6 @@
lib_LTLIBRARIES = libABRTMiddleWare.la
libABRTMiddleWare_la_SOURCES = \
- ABRTPlugin.cpp ABRTPlugin.h \
- DynamicLibrary.cpp DynamicLibrary.h \
RPM.cpp RPM.h \
Plugin.h MiddleWareTypes.h Action.h Database.h \
Reporter.h Analyzer.h