Port away from KService.
This commit is contained in:
parent
bbfff249cb
commit
722ef62ebb
|
@ -55,7 +55,7 @@ find_package(Qt5 ${QT_MIN_VERSION} CONFIG REQUIRED COMPONENTS
|
||||||
# Load the frameworks we need
|
# Load the frameworks we need
|
||||||
find_package(KF5 REQUIRED
|
find_package(KF5 REQUIRED
|
||||||
I18n
|
I18n
|
||||||
Service
|
CoreAddons
|
||||||
WidgetsAddons
|
WidgetsAddons
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -45,7 +45,7 @@ target_link_libraries( kpmcore
|
||||||
${LIBATASMART_LIBRARIES}
|
${LIBATASMART_LIBRARIES}
|
||||||
Qt5::DBus
|
Qt5::DBus
|
||||||
KF5::I18n
|
KF5::I18n
|
||||||
KF5::Service
|
KF5::CoreAddons
|
||||||
KF5::WidgetsAddons
|
KF5::WidgetsAddons
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
@ -23,10 +23,12 @@
|
||||||
#include <QDebug>
|
#include <QDebug>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <QString>
|
#include <QString>
|
||||||
|
#include <QVector>
|
||||||
|
|
||||||
#include <KLocalizedString>
|
#include <KLocalizedString>
|
||||||
|
#include <KPluginFactory>
|
||||||
#include <KPluginLoader>
|
#include <KPluginLoader>
|
||||||
#include <KServiceTypeTrader>
|
#include <KPluginMetaData>
|
||||||
|
|
||||||
CoreBackendManager::CoreBackendManager() :
|
CoreBackendManager::CoreBackendManager() :
|
||||||
m_Backend(nullptr)
|
m_Backend(nullptr)
|
||||||
|
@ -43,10 +45,15 @@ CoreBackendManager* CoreBackendManager::self()
|
||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
KService::List CoreBackendManager::list() const
|
QVector<KPluginMetaData> CoreBackendManager::list() const
|
||||||
{
|
{
|
||||||
return KServiceTypeTrader::self()->query(QStringLiteral("PartitionManager/Plugin"),
|
auto filter = [&](const KPluginMetaData &metaData) {
|
||||||
QStringLiteral("[X-KDE-PluginInfo-Category] == 'BackendPlugin'"));
|
return metaData.serviceTypes().contains(QStringLiteral("PartitionManager/Plugin")) &&
|
||||||
|
metaData.category().contains(QStringLiteral("BackendPlugin"));
|
||||||
|
};
|
||||||
|
|
||||||
|
// find backend plugins in standard path (e.g. /usr/lib64/qt5/plugins) using filter from above
|
||||||
|
return KPluginLoader::findPlugins(QString(), filter);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool CoreBackendManager::load(const QString& name)
|
bool CoreBackendManager::load(const QString& name)
|
||||||
|
|
|
@ -21,10 +21,11 @@
|
||||||
|
|
||||||
#include "util/libpartitionmanagerexport.h"
|
#include "util/libpartitionmanagerexport.h"
|
||||||
|
|
||||||
#include <KService>
|
#include <QVector>
|
||||||
|
|
||||||
class QString;
|
class QString;
|
||||||
class QStringList;
|
class QStringList;
|
||||||
|
class KPluginMetaData;
|
||||||
class CoreBackend;
|
class CoreBackend;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -55,7 +56,7 @@ public:
|
||||||
/**
|
/**
|
||||||
* @return a list of available backend plugins
|
* @return a list of available backend plugins
|
||||||
*/
|
*/
|
||||||
KService::List list() const;
|
QVector<KPluginMetaData> list() const;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Loads the given backend plugin into the application.
|
* Loads the given backend plugin into the application.
|
||||||
|
|
Loading…
Reference in New Issue