X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/cc77ea37de47ecf8d0261978aa9de924c917deec..d860ae7cd462d08e3de523e2a6f29850bb8d2e96:/src/com/owncloud/android/files/FileOperationsHelper.java?ds=sidebyside diff --git a/src/com/owncloud/android/files/FileOperationsHelper.java b/src/com/owncloud/android/files/FileOperationsHelper.java index 4f7ccea1..22be2a78 100644 --- a/src/com/owncloud/android/files/FileOperationsHelper.java +++ b/src/com/owncloud/android/files/FileOperationsHelper.java @@ -284,29 +284,29 @@ public class FileOperationsHelper { */ public void cancelTransference(OCFile file) { Account account = mFileActivity.getAccount(); - if (!file.isFolder()) { - FileDownloaderBinder downloaderBinder = mFileActivity.getFileDownloaderBinder(); - FileUploaderBinder uploaderBinder = mFileActivity.getFileUploaderBinder(); - if (downloaderBinder != null && downloaderBinder.isDownloading(account, file)) { - // Remove etag for parent, if file is a keep_in_sync - if (file.keepInSync()) { - OCFile parent = mFileActivity.getStorageManager().getFileById(file.getParentId()); - parent.setEtag(""); - mFileActivity.getStorageManager().saveFile(parent); - } + if (file.isFolder()) { + OperationsService.OperationsServiceBinder opsBinder = mFileActivity.getOperationsServiceBinder(); + if (opsBinder != null) { + opsBinder.cancel(account, file); + } + } - downloaderBinder.cancel(account, file); + // for both files and folders + FileDownloaderBinder downloaderBinder = mFileActivity.getFileDownloaderBinder(); + FileUploaderBinder uploaderBinder = mFileActivity.getFileUploaderBinder(); + if (downloaderBinder != null && downloaderBinder.isDownloading(account, file)) { + downloaderBinder.cancel(account, file); - } else if (uploaderBinder != null && uploaderBinder.isUploading(account, file)) { - uploaderBinder.cancel(account, file); + // TODO - review why is this here, and solve in a better way + // Remove etag for parent, if file is a keep_in_sync + if (file.keepInSync()) { + OCFile parent = mFileActivity.getStorageManager().getFileById(file.getParentId()); + parent.setEtag(""); + mFileActivity.getStorageManager().saveFile(parent); } - } else { - Intent intent = new Intent(mFileActivity, OperationsService.class); - intent.setAction(OperationsService.ACTION_CANCEL_SYNC_FOLDER); - intent.putExtra(OperationsService.EXTRA_ACCOUNT, account); - intent.putExtra(OperationsService.EXTRA_FILE, file); - mFileActivity.startService(intent); + } else if (uploaderBinder != null && uploaderBinder.isUploading(account, file)) { + uploaderBinder.cancel(account, file); } }