From 2ef51dd5f6a7279b4e14ee03aa06be34d70493ea Mon Sep 17 00:00:00 2001 From: davigonz Date: Wed, 23 May 2018 18:14:46 +0200 Subject: [PATCH] Move webdav path constant and refactor some Remote operation methods --- .../android/lib/refactor/RemoteOperation.java | 12 ++++++++++-- .../android/lib/refactor/account/AccountUtils.java | 3 ++- .../operations/OAuth2GetAccessTokenOperation.java | 5 +---- .../OAuth2RefreshAccessTokenOperation.java | 5 +---- 4 files changed, 14 insertions(+), 11 deletions(-) diff --git a/src/com/owncloud/android/lib/refactor/RemoteOperation.java b/src/com/owncloud/android/lib/refactor/RemoteOperation.java index a64ad37c..24caf1aa 100644 --- a/src/com/owncloud/android/lib/refactor/RemoteOperation.java +++ b/src/com/owncloud/android/lib/refactor/RemoteOperation.java @@ -15,7 +15,7 @@ public abstract class RemoteOperation { private final OCContext mContext; // TODO Move to a constants file private static final String USER_AGENT_HEADER = "User-Agent"; - private static final String WEBDAV_PATH_4_0 = "remote.php/dav/files"; + public static final String WEBDAV_PATH_4_0 = "remote.php/dav/files"; private static OkHttpClient mClient = null; protected RemoteOperation(OCContext context) { @@ -45,10 +45,18 @@ public abstract class RemoteOperation { .build(); } - protected Uri.Builder getBaseUriBuilder() { + private Uri.Builder getBaseUriBuilder() { return mContext.getOCAccount().getBaseUri().buildUpon(); } + protected HttpUrl getHttpUrl(String endpointPath) { + return UrlUtils.INSTANCE.omitTrailingSlash(HttpUrl.parse( + getBaseUriBuilder() + .appendEncodedPath(endpointPath) + .build() + .toString())); + } + protected HttpUrl getWebDavHttpUrl(String resourcePath) { return UrlUtils.INSTANCE.omitTrailingSlash(HttpUrl.parse( getBaseUriBuilder() diff --git a/src/com/owncloud/android/lib/refactor/account/AccountUtils.java b/src/com/owncloud/android/lib/refactor/account/AccountUtils.java index 26e2e21e..c1568c2e 100644 --- a/src/com/owncloud/android/lib/refactor/account/AccountUtils.java +++ b/src/com/owncloud/android/lib/refactor/account/AccountUtils.java @@ -35,6 +35,7 @@ import android.net.Uri; import com.owncloud.android.lib.refactor.Log_OC; import com.owncloud.android.lib.refactor.OCContext; +import com.owncloud.android.lib.refactor.RemoteOperation; import com.owncloud.android.lib.refactor.authentication.credentials.OCBasicCredentials; import com.owncloud.android.lib.refactor.authentication.credentials.OCBearerCredentials; import com.owncloud.android.lib.refactor.authentication.credentials.OCCredentials; @@ -65,7 +66,7 @@ public class AccountUtils { public static String getWebDavUrlForAccount(Context context, Account account) throws AccountNotFoundException { - return getBaseUrlForAccount(context, account) + OCContext.WEBDAV_PATH_4_0; + return getBaseUrlForAccount(context, account) + RemoteOperation.WEBDAV_PATH_4_0; } diff --git a/src/com/owncloud/android/lib/refactor/authentication/oauth/operations/OAuth2GetAccessTokenOperation.java b/src/com/owncloud/android/lib/refactor/authentication/oauth/operations/OAuth2GetAccessTokenOperation.java index 495315bd..4ada6507 100644 --- a/src/com/owncloud/android/lib/refactor/authentication/oauth/operations/OAuth2GetAccessTokenOperation.java +++ b/src/com/owncloud/android/lib/refactor/authentication/oauth/operations/OAuth2GetAccessTokenOperation.java @@ -91,10 +91,7 @@ public class OAuth2GetAccessTokenOperation extends RemoteOperation { .build(); final Request request = getRequestBuilder() - .url(getBaseUriBuilder() - .appendEncodedPath(mAccessTokenEndpointPath) - .build() - .toString()) + .url(getHttpUrl(mAccessTokenEndpointPath)) .method("POST", requestBody) .build(); diff --git a/src/com/owncloud/android/lib/refactor/authentication/oauth/operations/OAuth2RefreshAccessTokenOperation.java b/src/com/owncloud/android/lib/refactor/authentication/oauth/operations/OAuth2RefreshAccessTokenOperation.java index 78e67e47..98929f4a 100644 --- a/src/com/owncloud/android/lib/refactor/authentication/oauth/operations/OAuth2RefreshAccessTokenOperation.java +++ b/src/com/owncloud/android/lib/refactor/authentication/oauth/operations/OAuth2RefreshAccessTokenOperation.java @@ -86,10 +86,7 @@ public class OAuth2RefreshAccessTokenOperation extends RemoteOperation { .build(); final Request request = getRequestBuilder() - .url(getBaseUriBuilder() - .appendEncodedPath(mAccessTokenEndpointPath) - .build() - .toString()) + .url(getHttpUrl(mAccessTokenEndpointPath)) .method("POST", requestBody) .build();