- * SPDX-License-Identifier: MIT
- */
-package com.owncloud.android.lib.common.operations;
-
-import android.accounts.Account;
-import android.accounts.AccountsException;
-import android.os.Build;
-import android.system.ErrnoException;
-import android.system.OsConstants;
-
-import com.nextcloud.common.OkHttpMethodBase;
-import com.owncloud.android.lib.common.accounts.AccountUtils.AccountNotFoundException;
-import com.owncloud.android.lib.common.network.CertificateCombinedException;
-import com.owncloud.android.lib.common.utils.Log_OC;
-import com.owncloud.android.lib.resources.files.CreateLocalFileException;
-
-import org.apache.commons.httpclient.ConnectTimeoutException;
-import org.apache.commons.httpclient.Header;
-import org.apache.commons.httpclient.HttpException;
-import org.apache.commons.httpclient.HttpMethod;
-import org.apache.commons.httpclient.HttpStatus;
-import org.apache.jackrabbit.webdav.DavException;
-import org.json.JSONException;
-
-import java.io.ByteArrayInputStream;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.Serializable;
-import java.net.ConnectException;
-import java.net.MalformedURLException;
-import java.net.SocketException;
-import java.net.SocketTimeoutException;
-import java.net.UnknownHostException;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.Locale;
-
-import javax.net.ssl.SSLException;
-
-import okhttp3.Headers;
-
-
-/**
- * The result of a remote operation required to an ownCloud server.
- *
- * Provides a common classification of remote operation results for all the application.
- *
- * @author David A. Velasco
- */
-public class RemoteOperationResult implements Serializable {
-
- // Generated - should be refreshed every time the class changes!!
- private static final long serialVersionUID = -4325446958558896222L;
- private static final String TAG = RemoteOperationResult.class.getSimpleName();
- private static final String HEADER_WWW_AUTHENTICATE = "www-authenticate";
- private static final String HEADER_LOCATION = "location";
-
- public enum ResultCode {
- OK,
- OK_SSL,
- OK_NO_SSL,
- UNHANDLED_HTTP_CODE,
- UNAUTHORIZED,
- FILE_NOT_FOUND,
- INSTANCE_NOT_CONFIGURED,
- UNKNOWN_ERROR,
- WRONG_CONNECTION,
- TIMEOUT,
- INCORRECT_ADDRESS,
- HOST_NOT_AVAILABLE,
- NO_NETWORK_CONNECTION,
- SSL_ERROR,
- SSL_RECOVERABLE_PEER_UNVERIFIED,
- BAD_OC_VERSION,
- CANCELLED,
- INVALID_LOCAL_FILE_NAME,
- INVALID_OVERWRITE,
- CONFLICT,
- OAUTH2_ERROR,
- SYNC_CONFLICT,
- LOCAL_STORAGE_FULL,
- LOCAL_STORAGE_NOT_MOVED,
- LOCAL_STORAGE_NOT_COPIED,
- OAUTH2_ERROR_ACCESS_DENIED,
- QUOTA_EXCEEDED,
- ACCOUNT_NOT_FOUND,
- ACCOUNT_EXCEPTION,
- ACCOUNT_NOT_NEW,
- ACCOUNT_NOT_THE_SAME,
- INVALID_CHARACTER_IN_NAME,
- SHARE_NOT_FOUND,
- LOCAL_STORAGE_NOT_REMOVED,
- FORBIDDEN,
- SHARE_FORBIDDEN,
- OK_REDIRECT_TO_NON_SECURE_CONNECTION,
- INVALID_MOVE_INTO_DESCENDANT,
- INVALID_COPY_INTO_DESCENDANT,
- PARTIAL_MOVE_DONE,
- PARTIAL_COPY_DONE,
- SHARE_WRONG_PARAMETER,
- WRONG_SERVER_RESPONSE,
- INVALID_CHARACTER_DETECT_IN_SERVER,
- DELAYED_FOR_WIFI,
- DELAYED_FOR_CHARGING,
- LOCAL_FILE_NOT_FOUND,
- NOT_AVAILABLE,
- MAINTENANCE_MODE,
- LOCK_FAILED,
- DELAYED_IN_POWER_SAVE_MODE,
- ACCOUNT_USES_STANDARD_PASSWORD,
- METADATA_NOT_FOUND,
- OLD_ANDROID_API,
- UNTRUSTED_DOMAIN,
- ETAG_CHANGED,
- ETAG_UNCHANGED,
- VIRUS_DETECTED,
- FOLDER_ALREADY_EXISTS,
- CANNOT_CREATE_FILE,
- LOCKED
- }
-
- private boolean mSuccess = false;
- private int mHttpCode = -1;
- private String mHttpPhrase = null;
- private Exception mException = null;
- private ResultCode mCode = ResultCode.UNKNOWN_ERROR;
- private String message;
- private String mRedirectedLocation;
- private ArrayList mAuthenticateHeaders = new ArrayList<>();
- private String mLastPermanentLocation = null;
-
- private ArrayList