X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/1f964a79ddb432dbba44198d20a77d6a3d1f9600..08be3d3433b65d0858dc1503a82ed5a3ba655d36:/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 b80cc573..37b2fbac 100644 --- a/src/com/owncloud/android/utils/ErrorMessageAdapter.java +++ b/src/com/owncloud/android/utils/ErrorMessageAdapter.java @@ -29,14 +29,15 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode; import com.owncloud.android.operations.CopyFileOperation; import com.owncloud.android.operations.CreateFolderOperation; -import com.owncloud.android.operations.CreateShareOperation; +import com.owncloud.android.operations.CreateShareViaLinkOperation; +import com.owncloud.android.operations.CreateShareWithShareeOperation; 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; import com.owncloud.android.operations.SynchronizeFolderOperation; -import com.owncloud.android.operations.UnshareLinkOperation; +import com.owncloud.android.operations.UnshareOperation; import com.owncloud.android.operations.UploadFileOperation; import org.apache.commons.httpclient.ConnectTimeoutException; @@ -60,7 +61,10 @@ public class ErrorMessageAdapter { String message = null; - if (operation instanceof UploadFileOperation) { + if (!result.isSuccess() && isNetworkError(result.getCode())) { + message = getErrorMessage(result, res); + + } else if (operation instanceof UploadFileOperation) { if (result.isSuccess()) { message = String.format( @@ -119,9 +123,6 @@ public class ErrorMessageAdapter { // 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 { message = res.getString(R.string.remove_fail_msg); } @@ -139,9 +140,6 @@ public class ErrorMessageAdapter { } 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); - } else if (result.getCode() == ResultCode.INVALID_CHARACTER_DETECT_IN_SERVER) { message = res.getString(R.string.filename_forbidden_charaters_from_server); @@ -162,16 +160,18 @@ public class ErrorMessageAdapter { 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); - } else if (result.getCode() == ResultCode.INVALID_CHARACTER_DETECT_IN_SERVER) { message = res.getString(R.string.filename_forbidden_charaters_from_server); } else { message = res.getString(R.string.create_dir_fail_msg); } - } else if (operation instanceof CreateShareOperation) { - if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { // Error --> SHARE_NOT_FOUND + } else if (operation instanceof CreateShareViaLinkOperation || + operation instanceof CreateShareWithShareeOperation) { + + if (result.getData() != null && result.getData().size() > 0) { + message = (String) result.getData().get(0); // share API sends its own error messages + + } else if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { message = res.getString(R.string.share_link_file_no_exist); } else if (result.getCode() == ResultCode.SHARE_FORBIDDEN) { @@ -179,17 +179,17 @@ public class ErrorMessageAdapter { 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); - } else { // Generic error // Show a Message, operation finished without success message = res.getString(R.string.share_link_file_error); } - } else if (operation instanceof UnshareLinkOperation) { + } else if (operation instanceof UnshareOperation) { - if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { // Error --> SHARE_NOT_FOUND + if (result.getData() != null && result.getData().size() > 0) { + message = (String) result.getData().get(0); // share API sends its own error messages + + } else if (result.getCode() == ResultCode.SHARE_NOT_FOUND) { message = res.getString(R.string.unshare_link_file_no_exist); } else if (result.getCode() == ResultCode.SHARE_FORBIDDEN) { @@ -197,18 +197,13 @@ public class ErrorMessageAdapter { 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); - } else { // Generic error // Show a Message, operation finished without success message = res.getString(R.string.unshare_link_file_error); } } else if (operation instanceof MoveFileOperation) { - if(isNetworkError(result.getCode())){ - message = getErrorMessage(result, res); - } else if (result.getCode() == ResultCode.FILE_NOT_FOUND) { + 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); @@ -238,14 +233,12 @@ public class ErrorMessageAdapter { } else { // Generic error // Show a Message, operation finished without success - message = String.format(res.getString(R.string.download_folder_failed_content), + message = String.format(res.getString(R.string.sync_folder_failed_content), folderPathName); } } } else if (operation instanceof CopyFileOperation) { - if(isNetworkError(result.getCode())){ - message = getErrorMessage(result, res); - } else if (result.getCode() == ResultCode.FILE_NOT_FOUND) { + if (result.getCode() == ResultCode.FILE_NOT_FOUND) { message = res.getString(R.string.copy_file_not_found); } else if (result.getCode() == ResultCode.INVALID_COPY_INTO_DESCENDANT) { message = res.getString(R.string.copy_file_invalid_into_descendent);