/**
   * Cancel the transference in downloads (files/folders) and file uploads
   *
   * @param file OCFile
   */
  public void cancelTransference(OCFile file) {
    Account account = mFileActivity.getAccount();
    if (file.isFolder()) {
      OperationsService.OperationsServiceBinder opsBinder =
          mFileActivity.getOperationsServiceBinder();
      if (opsBinder != null) {
        opsBinder.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);

      // TODO - review why is this here, and solve in a better way
      // Remove etag for parent, if file is a favorite
      if (file.isFavorite()) {
        OCFile parent = mFileActivity.getStorageManager().getFileById(file.getParentId());
        parent.setEtag("");
        mFileActivity.getStorageManager().saveFile(parent);
      }

    } else if (uploaderBinder != null && uploaderBinder.isUploading(account, file)) {
      uploaderBinder.cancel(account, file);
    }
  }