X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/e9f0604fb744848b3243596446e5d23e58269089..e901b609baa4dd5f681e2a5257c9e504997e3377:/src/com/owncloud/android/utils/ErrorMessageAdapter.java diff --git a/src/com/owncloud/android/utils/ErrorMessageAdapter.java b/src/com/owncloud/android/utils/ErrorMessageAdapter.java index c5bda8ce..e56e8760 100644 --- a/src/com/owncloud/android/utils/ErrorMessageAdapter.java +++ b/src/com/owncloud/android/utils/ErrorMessageAdapter.java @@ -20,7 +20,9 @@ package com.owncloud.android.utils; import java.io.File; import java.net.SocketTimeoutException; + import org.apache.commons.httpclient.ConnectTimeoutException; + import android.content.res.Resources; import com.owncloud.android.R; @@ -30,6 +32,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCo import com.owncloud.android.operations.CreateFolderOperation; import com.owncloud.android.operations.CreateShareOperation; import com.owncloud.android.operations.DownloadFileOperation; +import com.owncloud.android.operations.MoveFileOperation; import com.owncloud.android.operations.RemoveFileOperation; import com.owncloud.android.operations.RenameFileOperation; import com.owncloud.android.operations.SynchronizeFileOperation; @@ -62,11 +65,17 @@ public class ErrorMessageAdapter { if (result.getCode() == ResultCode.LOCAL_STORAGE_FULL || result.getCode() == ResultCode.LOCAL_STORAGE_NOT_COPIED) { message = String.format(res.getString(R.string.error__upload__local_file_not_copied), - ((UploadFileOperation) operation).getFileName()); - + ((UploadFileOperation) operation).getFileName(), + res.getString(R.string.app_name)); + /* } else if (result.getCode() == ResultCode.QUOTA_EXCEEDED) { message = res.getString(R.string.failed_upload_quota_exceeded_text); + */ + } else if (result.getCode() == ResultCode.FORBIDDEN) { + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.uploader_upload_forbidden_permissions)); + } else { message = String.format(res.getString(R.string.uploader_upload_failed_content_single), ((UploadFileOperation) operation).getFileName()); @@ -80,8 +89,13 @@ public class ErrorMessageAdapter { new File(((DownloadFileOperation) operation).getSavePath()).getName()); } else { - message = String.format(res.getString(R.string.downloader_download_failed_content), - new File(((DownloadFileOperation) operation).getSavePath()).getName()); + if (result.getCode() == ResultCode.FILE_NOT_FOUND) { + message = res.getString(R.string.downloader_download_file_not_found); + + } else { + message = String.format(res.getString(R.string.downloader_download_failed_content), new File( + ((DownloadFileOperation) operation).getSavePath()).getName()); + } } } else if (operation instanceof RemoveFileOperation) { @@ -89,7 +103,11 @@ public class ErrorMessageAdapter { message = res.getString(R.string.remove_success_msg); } else { - if (isNetworkError(result.getCode())) { + if (result.getCode().equals(ResultCode.FORBIDDEN)) { + // Error --> No permissions + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.forbidden_permissions_delete)); + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res); } else { @@ -100,10 +118,15 @@ public class ErrorMessageAdapter { } else if (operation instanceof RenameFileOperation) { if (result.getCode().equals(ResultCode.INVALID_LOCAL_FILE_NAME)) { message = res.getString(R.string.rename_local_fail_msg); - - } if (result.getCode().equals(ResultCode.INVALID_CHARACTER_IN_NAME)) { + + } else if (result.getCode().equals(ResultCode.FORBIDDEN)) { + // Error --> No permissions + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.forbidden_permissions_rename)); + + } else if (result.getCode().equals(ResultCode.INVALID_CHARACTER_IN_NAME)) { message = res.getString(R.string.filename_forbidden_characters); - + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res); @@ -119,7 +142,11 @@ public class ErrorMessageAdapter { } else if (operation instanceof CreateFolderOperation) { if (result.getCode() == ResultCode.INVALID_CHARACTER_IN_NAME) { message = res.getString(R.string.filename_forbidden_characters); - + + } else if (result.getCode().equals(ResultCode.FORBIDDEN)) { + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.forbidden_permissions_create)); + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res); @@ -130,6 +157,11 @@ public class ErrorMessageAdapter { if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { // Error --> SHARE_NOT_FOUND message = res.getString(R.string.share_link_file_no_exist); + } else if (result.getCode() == ResultCode.SHARE_FORBIDDEN) { + // Error --> No permissions + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.share_link_forbidden_permissions)); + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res); @@ -143,6 +175,11 @@ public class ErrorMessageAdapter { if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { // Error --> SHARE_NOT_FOUND message = res.getString(R.string.unshare_link_file_no_exist); + } else if (result.getCode() == ResultCode.SHARE_FORBIDDEN) { + // Error --> No permissions + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.unshare_link_forbidden_permissions)); + } else if (isNetworkError(result.getCode())) { message = getErrorMessage(result, res); @@ -150,6 +187,25 @@ public class ErrorMessageAdapter { // Show a Message, operation finished without success message = res.getString(R.string.unshare_link_file_error); } + } else if (operation instanceof MoveFileOperation) { + + if (result.getCode() == ResultCode.FILE_NOT_FOUND) { + message = res.getString(R.string.move_file_not_found); + + } else if (result.getCode() == ResultCode.INVALID_MOVE_INTO_DESCENDANT) { + message = res.getString(R.string.move_file_invalid_into_descendent); + + } else if (result.getCode() == ResultCode.INVALID_OVERWRITE) { + message = res.getString(R.string.move_file_invalid_overwrite); + + } else if (result.getCode() == ResultCode.FORBIDDEN) { + message = String.format(res.getString(R.string.forbidden_permissions), + res.getString(R.string.forbidden_permissions_move)); + + }else { // Generic error + // Show a Message, operation finished without success + message = res.getString(R.string.move_file_error); + } } return message;