alpm: add new error codes

This commit is contained in:
Jonathan Conder 2011-10-26 19:47:32 +13:00
parent 5ffa0da5a7
commit cd57855b21

View File

@ -33,140 +33,153 @@ pk_backend_error (PkBackend *self, GError *error)
g_return_if_fail (self != NULL);
g_return_if_fail (error != NULL);
if (error->domain == ALPM_ERROR) {
switch (error->code) {
case PM_ERR_MEMORY:
case PM_ERR_SYSTEM:
code = PK_ERROR_ENUM_OOM;
break;
if (error->domain != ALPM_ERROR) {
pk_backend_error_code (self, code, "%s", error->message);
return;
}
case PM_ERR_BADPERMS:
code = PK_ERROR_ENUM_NOT_AUTHORIZED;
break;
switch (error->code) {
case PM_ERR_MEMORY:
case PM_ERR_SYSTEM:
code = PK_ERROR_ENUM_OOM;
break;
case PM_ERR_NOT_A_FILE:
case PM_ERR_NOT_A_DIR:
code = PK_ERROR_ENUM_FILE_NOT_FOUND;
break;
case PM_ERR_BADPERMS:
code = PK_ERROR_ENUM_NOT_AUTHORIZED;
break;
case PM_ERR_WRONG_ARGS:
case PM_ERR_HANDLE_NULL:
case PM_ERR_DB_NULL:
case PM_ERR_TRANS_NULL:
case PM_ERR_TRANS_NOT_INITIALIZED:
case PM_ERR_TRANS_NOT_PREPARED:
case PM_ERR_TRANS_NOT_LOCKED:
case PM_ERR_INVALID_REGEX:
code = PK_ERROR_ENUM_INTERNAL_ERROR;
break;
case PM_ERR_NOT_A_FILE:
case PM_ERR_NOT_A_DIR:
code = PK_ERROR_ENUM_FILE_NOT_FOUND;
break;
case PM_ERR_DISK_SPACE:
code = PK_ERROR_ENUM_NO_SPACE_ON_DEVICE;
break;
case PM_ERR_WRONG_ARGS:
case PM_ERR_HANDLE_NULL:
case PM_ERR_DB_NULL:
case PM_ERR_TRANS_NULL:
case PM_ERR_TRANS_NOT_INITIALIZED:
case PM_ERR_TRANS_NOT_PREPARED:
case PM_ERR_TRANS_NOT_LOCKED:
case PM_ERR_INVALID_REGEX:
code = PK_ERROR_ENUM_INTERNAL_ERROR;
break;
case PM_ERR_HANDLE_NOT_NULL:
case PM_ERR_DB_NOT_NULL:
case PM_ERR_TRANS_NOT_NULL:
code = PK_ERROR_ENUM_FAILED_INITIALIZATION;
break;
case PM_ERR_DISK_SPACE:
code = PK_ERROR_ENUM_NO_SPACE_ON_DEVICE;
break;
case PM_ERR_HANDLE_LOCK:
code = PK_ERROR_ENUM_CANNOT_GET_LOCK;
break;
case PM_ERR_HANDLE_NOT_NULL:
case PM_ERR_DB_NOT_NULL:
case PM_ERR_TRANS_NOT_NULL:
code = PK_ERROR_ENUM_FAILED_INITIALIZATION;
break;
case PM_ERR_DB_OPEN:
case PM_ERR_DB_NOT_FOUND:
case PM_ERR_PKG_REPO_NOT_FOUND:
code = PK_ERROR_ENUM_REPO_NOT_FOUND;
break;
case PM_ERR_HANDLE_LOCK:
code = PK_ERROR_ENUM_CANNOT_GET_LOCK;
break;
case PM_ERR_DB_CREATE:
code = PK_ERROR_ENUM_CANNOT_WRITE_REPO_CONFIG;
break;
case PM_ERR_DB_OPEN:
case PM_ERR_DB_NOT_FOUND:
case PM_ERR_PKG_REPO_NOT_FOUND:
code = PK_ERROR_ENUM_REPO_NOT_FOUND;
break;
case PM_ERR_DB_VERSION:
case PM_ERR_DB_REMOVE:
code = PK_ERROR_ENUM_REPO_CONFIGURATION_ERROR;
break;
case PM_ERR_DB_CREATE:
code = PK_ERROR_ENUM_CANNOT_WRITE_REPO_CONFIG;
break;
case PM_ERR_DB_WRITE:
code = PK_ERROR_ENUM_REPO_NOT_AVAILABLE;
break;
case PM_ERR_DB_VERSION:
case PM_ERR_DB_REMOVE:
case PM_ERR_SERVER_BAD_URL:
case PM_ERR_SIG_MISSINGDIR:
code = PK_ERROR_ENUM_REPO_CONFIGURATION_ERROR;
break;
case PM_ERR_SERVER_BAD_URL:
code = PK_ERROR_ENUM_REPO_CONFIGURATION_ERROR;
break;
case PM_ERR_DB_WRITE:
code = PK_ERROR_ENUM_REPO_NOT_AVAILABLE;
break;
case PM_ERR_SERVER_NONE:
code = PK_ERROR_ENUM_NO_MORE_MIRRORS_TO_TRY;
break;
case PM_ERR_SERVER_NONE:
code = PK_ERROR_ENUM_NO_MORE_MIRRORS_TO_TRY;
break;
case PM_ERR_TRANS_DUP_TARGET:
case PM_ERR_TRANS_ABORT:
code = PK_ERROR_ENUM_TRANSACTION_ERROR;
break;
case PM_ERR_TRANS_DUP_TARGET:
case PM_ERR_TRANS_ABORT:
code = PK_ERROR_ENUM_TRANSACTION_ERROR;
break;
case PM_ERR_TRANS_TYPE:
code = PK_ERROR_ENUM_CANNOT_CANCEL;
break;
case PM_ERR_TRANS_TYPE:
code = PK_ERROR_ENUM_CANNOT_CANCEL;
break;
case PM_ERR_PKG_NOT_FOUND:
code = PK_ERROR_ENUM_PACKAGE_NOT_FOUND;
break;
case PM_ERR_PKG_NOT_FOUND:
code = PK_ERROR_ENUM_PACKAGE_NOT_FOUND;
break;
case PM_ERR_PKG_IGNORED:
code = PK_ERROR_ENUM_PACKAGE_INSTALL_BLOCKED;
break;
case PM_ERR_PKG_IGNORED:
code = PK_ERROR_ENUM_PACKAGE_INSTALL_BLOCKED;
break;
case PM_ERR_PKG_INVALID:
case PM_ERR_PKG_OPEN:
case PM_ERR_PKG_INVALID_NAME:
case PM_ERR_DLT_INVALID:
code = PK_ERROR_ENUM_INVALID_PACKAGE_FILE;
break;
case PM_ERR_PKG_INVALID:
case PM_ERR_PKG_OPEN:
case PM_ERR_PKG_INVALID_NAME:
case PM_ERR_DLT_INVALID:
code = PK_ERROR_ENUM_INVALID_PACKAGE_FILE;
break;
case PM_ERR_PKG_CANT_REMOVE:
code = PK_ERROR_ENUM_PACKAGE_FAILED_TO_REMOVE;
break;
case PM_ERR_PKG_CANT_REMOVE:
code = PK_ERROR_ENUM_PACKAGE_FAILED_TO_REMOVE;
break;
case PM_ERR_PKG_INVALID_ARCH:
code = PK_ERROR_ENUM_INCOMPATIBLE_ARCHITECTURE;
break;
case PM_ERR_PKG_INVALID_ARCH:
code = PK_ERROR_ENUM_INCOMPATIBLE_ARCHITECTURE;
break;
case PM_ERR_DLT_PATCHFAILED:
code = PK_ERROR_ENUM_PACKAGE_FAILED_TO_BUILD;
break;
case PM_ERR_SIG_INVALID:
code = PK_ERROR_ENUM_BAD_GPG_SIGNATURE;
break;
case PM_ERR_UNSATISFIED_DEPS:
code = PK_ERROR_ENUM_DEP_RESOLUTION_FAILED;
break;
case PM_ERR_SIG_UNKNOWN:
code = PK_ERROR_ENUM_MISSING_GPG_SIGNATURE;
break;
case PM_ERR_CONFLICTING_DEPS:
code = PK_ERROR_ENUM_PACKAGE_CONFLICTS;
break;
case PM_ERR_DLT_PATCHFAILED:
code = PK_ERROR_ENUM_PACKAGE_FAILED_TO_BUILD;
break;
case PM_ERR_FILE_CONFLICTS:
code = PK_ERROR_ENUM_FILE_CONFLICTS;
break;
case PM_ERR_UNSATISFIED_DEPS:
code = PK_ERROR_ENUM_DEP_RESOLUTION_FAILED;
break;
case PM_ERR_RETRIEVE:
case PM_ERR_LIBFETCH:
case PM_ERR_EXTERNAL_DOWNLOAD:
code = PK_ERROR_ENUM_PACKAGE_DOWNLOAD_FAILED;
break;
case PM_ERR_CONFLICTING_DEPS:
code = PK_ERROR_ENUM_PACKAGE_CONFLICTS;
break;
case PM_ERR_LIBARCHIVE:
code = PK_ERROR_ENUM_LOCAL_INSTALL_FAILED;
break;
case PM_ERR_FILE_CONFLICTS:
code = PK_ERROR_ENUM_FILE_CONFLICTS;
break;
case PM_ERR_CONFIG_INVALID:
code = PK_ERROR_ENUM_CANNOT_REMOVE_SYSTEM_PACKAGE;
break;
case PM_ERR_RETRIEVE:
case PM_ERR_LIBCURL:
case PM_ERR_EXTERNAL_DOWNLOAD:
code = PK_ERROR_ENUM_PACKAGE_DOWNLOAD_FAILED;
break;
case PM_ERR_PKG_HELD:
code = PK_ERROR_ENUM_CANNOT_REMOVE_SYSTEM_PACKAGE;
break;
}
case PM_ERR_LIBARCHIVE:
code = PK_ERROR_ENUM_LOCAL_INSTALL_FAILED;
break;
case PM_ERR_GPGME:
code = PK_ERROR_ENUM_GPG_FAILURE;
break;
case PM_ERR_CONFIG_INVALID:
code = PK_ERROR_ENUM_FAILED_CONFIG_PARSING;
break;
case PM_ERR_PKG_HELD:
code = PK_ERROR_ENUM_CANNOT_REMOVE_SYSTEM_PACKAGE;
break;
}
pk_backend_error_code (self, code, "%s", error->message);