use PackageInfoLookup
This commit is contained in:
parent
a48a6fd656
commit
6d8cf66f99
|
@ -3,6 +3,7 @@
|
|||
#include "../alpm/manager.h"
|
||||
#include "../alpm/upgradelookup.h"
|
||||
#include "../alpm/suggestionslookup.h"
|
||||
#include "../alpm/packageinfolookup.h"
|
||||
#include "../alpm/config.h"
|
||||
|
||||
#include <QJsonDocument>
|
||||
|
@ -77,13 +78,17 @@ void Connection::handleQuery(const QJsonObject &obj)
|
|||
if(what == QLatin1String("basicrepoinfo")) {
|
||||
m_repoInfoUpdatesRequested = obj.value(QStringLiteral("updates")).toBool(m_repoInfoUpdatesRequested);
|
||||
sendResult(what, id, m_manager.basicRepoInfo());
|
||||
} else if(what == QLatin1String("basicpkginfo")) {
|
||||
sendResults(what, id, m_manager.packageInfo(obj.value("sel").toObject(), Manager::Basics));
|
||||
} else if(what == QLatin1String("pkgdetails")) {
|
||||
sendResults(what, id, m_manager.packageInfo(obj.value("sel").toObject(), Manager::Details));
|
||||
} else if(what == QLatin1String("fullpkginfo")) {
|
||||
// TODO: figure out why QFlags doesn't work, in the mean time, use static_cast workaround
|
||||
sendResults(what, id, m_manager.packageInfo(obj.value("sel").toObject(), static_cast<Manager::PackageInfoPart>(static_cast<int>(Manager::Basics) | static_cast<int>(Manager::Details))));
|
||||
} else if(what == QLatin1String("basicpkginfo") || what == QLatin1String("pkgdetails") || what == QLatin1String("fullpkginfo")) {
|
||||
auto *packageInfoLookup = new PackageInfoLookup(m_manager, obj);
|
||||
if(packageInfoLookup->finished()) {
|
||||
sendResult(what, id, packageInfoLookup->results());
|
||||
} else if(!packageInfoLookup->errors().isEmpty()) {
|
||||
QJsonObject results;
|
||||
results.insert(QStringLiteral("errors"), packageInfoLookup->errors());
|
||||
sendResult(what, id, results);
|
||||
} else {
|
||||
connect(packageInfoLookup, &SuggestionsLookup::resultsAvailable, this, &Connection::sendResult);
|
||||
}
|
||||
} else if(what == QLatin1String("groupinfo")) {
|
||||
m_groupInfoUpdatesRequested = obj.value(QStringLiteral("updates")).toBool(m_groupInfoUpdatesRequested);
|
||||
sendResults(what, id, m_manager.groupInfo());
|
||||
|
|
Loading…
Reference in New Issue