diff --git a/src/main/java/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java b/src/main/java/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java deleted file mode 100644 index 5776358001..0000000000 --- a/src/main/java/com/owncloud/android/ui/dialog/RemoveFileDialogFragment.java +++ /dev/null @@ -1,146 +0,0 @@ -/** - * ownCloud Android client application - * - * @author David A. Velasco - * Copyright (C) 2015 ownCloud Inc. - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2, - * as published by the Free Software Foundation. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program. If not, see . - * - */ - -package com.owncloud.android.ui.dialog; - -/** - * Dialog requiring confirmation before removing a given OCFile. - * - * Triggers the removal according to the user response. - */ - -import android.app.Dialog; -import android.os.Bundle; - -import com.owncloud.android.R; -import com.owncloud.android.datamodel.FileDataStorageManager; -import com.owncloud.android.datamodel.OCFile; -import com.owncloud.android.ui.activity.ComponentsGetter; -import com.owncloud.android.ui.dialog.ConfirmationDialogFragment.ConfirmationDialogFragmentListener; - -import java.util.ArrayList; -import java.util.List; - -public class RemoveFileDialogFragment extends ConfirmationDialogFragment -implements ConfirmationDialogFragmentListener { - - private OCFile mTargetFile; - - private static final String ARG_TARGET_FILE = "TARGET_FILE"; - - /** - * Public factory method to create new RemoveFileDialogFragment instances. - * - * @param file File to remove. - * @return Dialog ready to show. - */ - public static RemoveFileDialogFragment newInstance(OCFile file) { - RemoveFileDialogFragment frag = new RemoveFileDialogFragment(); - Bundle args = new Bundle(); - - int messageStringId = R.string.confirmation_remove_file_alert; - - int localRemoveButton = (!file.isAvailableOffline() && (file.isFolder() || file.isDown())) ? - R.string.confirmation_remove_local : -1; - - if (file.isFolder()) { - messageStringId = R.string.confirmation_remove_folder_alert; - } - - args.putInt(ARG_MESSAGE_RESOURCE_ID, messageStringId); - args.putStringArray(ARG_MESSAGE_ARGUMENTS, new String[]{file.getFileName()}); - args.putInt(ARG_POSITIVE_BTN_RES, R.string.common_yes); - args.putInt(ARG_NEUTRAL_BTN_RES, R.string.common_no); - args.putInt(ARG_NEGATIVE_BTN_RES, localRemoveButton); - args.putParcelable(ARG_TARGET_FILE, file); - frag.setArguments(args); - - return frag; - } - - @Override - public Dialog onCreateDialog(Bundle savedInstanceState) { - Dialog dialog = super.onCreateDialog(savedInstanceState); - mTargetFile = getArguments().getParcelable(ARG_TARGET_FILE); - - setOnConfirmationListener(this); - - return dialog; - } - - /** - * Performs the removal of the target file, both locally and in the server. - */ - @Override - public void onConfirmation(String callerTag) { - ComponentsGetter cg = (ComponentsGetter)getActivity(); - FileDataStorageManager storageManager = cg.getStorageManager(); - if (storageManager.getFileById(mTargetFile.getFileId()) != null) { - ArrayList list = new ArrayList<>(); - list.add(mTargetFile); - cg.getFileOperationsHelper().removeFiles(list, false, false); - } - } - - /** - * Performs the removal of the local copy of the target file - */ - @Override - public void onCancel(String callerTag) { - ComponentsGetter cg = (ComponentsGetter)getActivity(); - ArrayList list = new ArrayList<>(); - list.add(mTargetFile); - cg.getFileOperationsHelper().removeFiles(list, true, false); - - FileDataStorageManager storageManager = cg.getStorageManager(); - - boolean containsFavorite = false; - if (mTargetFile.isFolder()) { - List files = storageManager.getFolderContent(mTargetFile, false); - - for(OCFile file: files) { - containsFavorite = file.isAvailableOffline() || containsFavorite; - - if (containsFavorite) { - break; - } - } - } - - // Remove etag for parent, if file is a favorite - // or is a folder and contains favorite - if (mTargetFile.isAvailableOffline() || containsFavorite) { - OCFile folder = null; - if (mTargetFile.isFolder()) { - folder = mTargetFile; - } else { - folder = storageManager.getFileById(mTargetFile.getParentId()); - } - - folder.setEtag(""); - storageManager.saveFile(folder); - } - } - - @Override - public void onNeutral(String callerTag) { - // nothing to do here - } -} \ No newline at end of file