X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/1e7a75c042f6d8d83a1c44d0d3be69ff38563fef..afaa2879d192be067cae523b51dad75d89a6c6cb:/src/com/owncloud/android/authentication/AuthenticatorAsyncTask.java diff --git a/src/com/owncloud/android/authentication/AuthenticatorAsyncTask.java b/src/com/owncloud/android/authentication/AuthenticatorAsyncTask.java index 26525a76..4b2aed50 100644 --- a/src/com/owncloud/android/authentication/AuthenticatorAsyncTask.java +++ b/src/com/owncloud/android/authentication/AuthenticatorAsyncTask.java @@ -1,3 +1,22 @@ +/** + * ownCloud Android client application + * + * @author masensio on 09/02/2015. + * 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.authentication; import android.app.Activity; @@ -9,8 +28,6 @@ import com.owncloud.android.MainApp; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.OwnCloudClientFactory; import com.owncloud.android.lib.common.OwnCloudCredentials; -import com.owncloud.android.lib.common.OwnCloudCredentialsFactory; -import com.owncloud.android.lib.common.accounts.AccountTypeUtils; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.resources.files.ExistenceCheckRemoteOperation; @@ -19,60 +36,41 @@ import java.lang.ref.WeakReference; /** * Async Task to verify the credentials of a user - * - * @author masensio on 09/02/2015. */ -public class AuthenticatorAsyncTask extends AsyncTask { - +public class AuthenticatorAsyncTask extends AsyncTask { private static String REMOTE_PATH = "/"; private static boolean SUCCESS_IF_ABSENT = false; private Context mContext; private final WeakReference mListener; + protected Activity mActivity; public AuthenticatorAsyncTask(Activity activity) { mContext = activity.getApplicationContext(); - mListener = new WeakReference<>((OnAuthenticatorTaskListener)activity); + mListener = new WeakReference((OnAuthenticatorTaskListener)activity); } @Override - protected RemoteOperationResult doInBackground(String... params) { + protected RemoteOperationResult doInBackground(Object... params) { RemoteOperationResult result; - if (params!= null && params.length==5) { - String url = params[0]; - String username = params[1]; - String password = params[2]; - String authToken = params[3]; - String authTokenType = params[4]; + if (params!= null && params.length==2) { + String url = (String)params[0]; + OwnCloudCredentials credentials = (OwnCloudCredentials)params[1]; // Client - String basic = AccountTypeUtils.getAuthTokenTypePass(MainApp.getAccountType()); - String oAuth = AccountTypeUtils.getAuthTokenTypeAccessToken(MainApp.getAccountType()); - String saml = AccountTypeUtils.getAuthTokenTypeSamlSessionCookie(MainApp.getAccountType()); - Uri uri = Uri.parse(url); - OwnCloudClient client = OwnCloudClientFactory.createOwnCloudClient(uri, mContext, false); - OwnCloudCredentials credentials = null; - if (authTokenType.equals(basic)) { - credentials = OwnCloudCredentialsFactory.newBasicCredentials( - username, password); // basic - - } else if (authTokenType.equals(oAuth)) { - credentials = OwnCloudCredentialsFactory.newBearerCredentials( - authToken); // bearer token - - } else if (authTokenType.equals(saml)) { - credentials = OwnCloudCredentialsFactory.newSamlSsoCredentials( - authToken); // SAML SSO - } + OwnCloudClient client = OwnCloudClientFactory.createOwnCloudClient(uri, mContext, true); client.setCredentials(credentials); // Operation - ExistenceCheckRemoteOperation operation = new ExistenceCheckRemoteOperation(REMOTE_PATH, - mContext, SUCCESS_IF_ABSENT); + ExistenceCheckRemoteOperation operation = new ExistenceCheckRemoteOperation( + REMOTE_PATH, + mContext, + SUCCESS_IF_ABSENT + ); result = operation.execute(client); } else { @@ -94,7 +92,6 @@ public class AuthenticatorAsyncTask extends AsyncTask