X-Git-Url: http://git.linex4red.de/pub/Android/ownCloud.git/blobdiff_plain/10c04c6d77de35025f697a2ad9bb8f18874a4acb..a032bdeebc51a6e81d1bd5c558944f96fc55eacb:/src/eu/alefzero/owncloud/authenticator/AuthenticationRunnable.java diff --git a/src/eu/alefzero/owncloud/authenticator/AuthenticationRunnable.java b/src/eu/alefzero/owncloud/authenticator/AuthenticationRunnable.java index 445524c2..691c93e6 100644 --- a/src/eu/alefzero/owncloud/authenticator/AuthenticationRunnable.java +++ b/src/eu/alefzero/owncloud/authenticator/AuthenticationRunnable.java @@ -29,55 +29,53 @@ import android.os.Handler; public class AuthenticationRunnable implements Runnable { - private OnAuthenticationResultListener mListener; - private Handler mHandler; - private URL mUrl; - private String mUsername; - private String mPassword; - - private static final String WEBDAV_2_0_PATH = "/files/webdav.php"; - - public AuthenticationRunnable(URL url, String username, String password) { - mListener = null; - mUrl = url; - mUsername = username; - mPassword = password; - } - - public void setOnAuthenticationResultListener(OnAuthenticationResultListener listener, Handler handler) { - mListener = listener; - mHandler = handler; - } - - @Override - public void run() { - Uri uri = Uri.parse(mUrl.toString() + WEBDAV_2_0_PATH); - WebdavClient client = new WebdavClient(uri); - client.setCredentials(mUsername, mPassword); - int login_result = client.tryToLogin(); - switch (login_result) { - case HttpStatus.SC_OK: - postResult(true, uri.toString()); - break; - case HttpStatus.SC_UNAUTHORIZED: - postResult(false, "Invalid login or/and password"); - break; - case HttpStatus.SC_NOT_FOUND: - postResult(false, "Wrong path given"); - break; - default: - postResult(false, "Internal server error, code: " + login_result); + private OnAuthenticationResultListener mListener; + private Handler mHandler; + private URL mUrl; + private String mUsername; + private String mPassword; + + public AuthenticationRunnable(URL url, String username, String password) { + mListener = null; + mUrl = url; + mUsername = username; + mPassword = password; + } + + public void setOnAuthenticationResultListener( + OnAuthenticationResultListener listener, Handler handler) { + mListener = listener; + mHandler = handler; + } + + @Override + public void run() { + Uri uri; + uri = Uri.parse(mUrl.toString()); + int login_result = WebdavClient.tryToLogin(uri, mUsername, mPassword); + switch (login_result) { + case HttpStatus.SC_OK: + postResult(true, uri.toString()); + break; + case HttpStatus.SC_UNAUTHORIZED: + postResult(false, "Invalid login or/and password"); + break; + case HttpStatus.SC_NOT_FOUND: + postResult(false, "Wrong path given"); + break; + default: + postResult(false, "Internal server error, code: " + login_result); + } } - } - private void postResult(final boolean success, final String message) { - if (mHandler != null) { - mHandler.post(new Runnable() { - @Override - public void run() { - AuthenticationRunnable.this.mListener.onAuthenticationResult(success, message); + private void postResult(final boolean success, final String message) { + if (mHandler != null && mListener != null) { + mHandler.post(new Runnable() { + @Override + public void run() { + mListener.onAuthenticationResult(success, message); + } + }); } - }); } - } }