summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdrien BUSTANY <madcat@mymadcat.com>2008-06-13 01:49:14 +0200
committerAdrien BUSTANY <madcat@mymadcat.com>2008-06-13 01:49:14 +0200
commit8581860a966cd385cb4fe388aa6ea8a5133134c1 (patch)
treec4678a98632ba83a5ec883ea4d4d7b89cb6db2b7
parenta77da4d2bebfe0beb166ad622333621b7406b8aa (diff)
Change the proto of getActions to return an uint, to OR with Action::Value
-rw-r--r--lib/Daemon.cpp11
-rw-r--r--lib/Daemon.h2
-rw-r--r--lib/Error.h76
3 files changed, 47 insertions, 42 deletions
diff --git a/lib/Daemon.cpp b/lib/Daemon.cpp
index 98e33d8..822b519 100644
--- a/lib/Daemon.cpp
+++ b/lib/Daemon.cpp
@@ -12,6 +12,7 @@
#include "Daemon.h"
#include "constants.h"
#include "PolkitClient.h"
+#include "Actions.h"
using namespace PackageKit;
@@ -29,9 +30,13 @@ Daemon::Daemon(QObject *parent) : QObject(parent) {
Daemon::~Daemon() {
}
-QStringList Daemon::getActions() {
- QString actions = proxy->GetActions();
- return actions.split(";");
+unsigned int Daemon::getActions() {
+ QStringList actions = QString(proxy->GetActions()).split(";");
+ unsigned int ret = 0;
+ for(int i = 0 ; i < actions.size() ; ++i) {
+ ret |= EnumFromString<Actions>(actions.at(i));
+ }
+ return ret;
}
void Daemon::getBackendDetails(QString &name, QString &author) {
diff --git a/lib/Daemon.h b/lib/Daemon.h
index 2a15b0a..6a1ad49 100644
--- a/lib/Daemon.h
+++ b/lib/Daemon.h
@@ -34,7 +34,7 @@ public:
~Daemon();
// PackageKit functions
- QStringList getActions();
+ unsigned int getActions();
void getBackendDetails(QString &name, QString &author);
QStringList getFilters();
QStringList getGroups();
diff --git a/lib/Error.h b/lib/Error.h
index c25a0a0..c0ad858 100644
--- a/lib/Error.h
+++ b/lib/Error.h
@@ -26,44 +26,44 @@ class Error : public QObject {
public:
typedef enum {
Oom,
- NoNetwork,
- NotSupported,
- InternalError,
- GpgFailure,
- PackageIdInvalid,
- PackageNotInstalled,
- PackageNotFound,
- PackageAlreadyInstalled,
- PackageDownloadFailed,
- GroupNotFound,
- GroupListInvalid,
- DepResolutionFailed,
- FilterInvalid,
- CreateThreadFailed,
- TransactionError,
- TransactionCancelled,
- NoCache,
- RepoNotFound,
- CannotRemoveSystemPackage,
- ProcessKill,
- FailedInitialization,
- FailedFinalise,
- FailedConfigParsing,
- CannotCancel,
- CannotGetLock,
- NoPackagesToUpdate,
- CannotWriteRepoConfig,
- LocalInstallFailed,
- BadGpgSignature,
- MissingGpgSignature,
- CannotInstallSourcePackage,
- RepoConfigurationError,
- NoLicenseAgreement,
- FileConflicts,
- RepoNotAvailable,
- InvalidPackageFile,
- PackageInstallBlocked,
- PackageCorrupt,
+ No_network,
+ Not_supported,
+ Internal_error,
+ Gpg_failure,
+ Package_id_invalid,
+ Package_not_installed,
+ Package_not_found,
+ Package_already_installed,
+ Package_download_failed,
+ Group_not_found,
+ Group_list_invalid,
+ Dep_resolution_failed,
+ Filter_invalid,
+ Create_thread_failed,
+ Transaction_error,
+ Transaction_cancelled,
+ No_cache,
+ Repo_not_found,
+ Cannot_remove_system_package,
+ Process_kill,
+ Failed_initialization,
+ Failed_finalise,
+ Failed_config_parsing,
+ Cannot_cancel,
+ Cannot_getLock,
+ No_packages_to_update,
+ Cannot_write_repo_config,
+ Local_install_failed,
+ Bad_gpg_signature,
+ Missing_gpg_signature,
+ Cannot_install_source_package,
+ Repo_configuration_error,
+ No_license_agreement,
+ File_conflicts,
+ Repo_not_available,
+ Invalid_package_file,
+ Package_install_blocked,
+ Package_corrupt,
Unknown
} Value;