From 06ec99aead102308cf2ec52adfeca5c2f847d4b2 Mon Sep 17 00:00:00 2001 From: theScrabi Date: Fri, 6 Jul 2018 10:56:26 +0200 Subject: [PATCH] replace httpUrl with URL outside the wrapper --- .../lib/common/SingleSessionManager.java | 7 ++-- .../oauth/OAuth2GetAccessTokenOperation.java | 3 +- .../OAuth2RefreshAccessTokenOperation.java | 3 +- .../android/lib/common/http/HttpUtils.java | 37 ------------------- .../common/http/methods/HttpBaseMethod.java | 5 ++- .../http/methods/nonwebdav/DeleteMethod.java | 5 ++- .../http/methods/nonwebdav/GetMethod.java | 5 ++- .../http/methods/nonwebdav/HttpMethod.java | 5 ++- .../http/methods/nonwebdav/PostMethod.java | 5 ++- .../http/methods/nonwebdav/PutMethod.java | 5 ++- .../http/methods/webdav/CopyMethod.java | 6 ++- .../common/http/methods/webdav/DavMethod.java | 8 ++-- .../http/methods/webdav/MkColMethod.java | 7 ++-- .../http/methods/webdav/MoveMethod.java | 7 ++-- .../http/methods/webdav/PropfindMethod.java | 5 ++- .../common/http/methods/webdav/PutMethod.java | 5 ++- .../lib/common/network/NetworkUtils.java | 6 --- .../android/lib/common/utils/Log_OC.java | 5 --- .../files/CopyRemoteFileOperation.java | 4 +- .../files/CreateRemoteFolderOperation.java | 3 +- .../files/DownloadRemoteFileOperation.java | 3 +- .../files/ExistenceCheckRemoteOperation.java | 25 +++++-------- .../files/MoveRemoteFileOperation.java | 3 +- .../files/ReadRemoteFileOperation.java | 4 +- .../files/ReadRemoteFolderOperation.java | 4 +- .../files/RemoveRemoteFileOperation.java | 6 +-- .../files/RenameRemoteFileOperation.java | 3 +- .../files/UploadRemoteFileOperation.java | 4 +- .../ChunkedUploadRemoteFileOperation.java | 4 +- .../shares/CreateRemoteShareOperation.java | 6 +-- .../shares/GetRemoteShareOperation.java | 7 ++-- .../shares/GetRemoteShareesOperation.java | 20 +++++----- .../GetRemoteSharesForFileOperation.java | 15 ++++---- .../shares/GetRemoteSharesOperation.java | 5 +-- .../shares/RemoveRemoteShareOperation.java | 6 +-- .../shares/UpdateRemoteShareOperation.java | 8 +--- .../GetRemoteCapabilitiesOperation.java | 6 +-- .../status/GetRemoteStatusOperation.java | 14 ++----- .../users/GetRemoteUserAvatarOperation.java | 9 ++--- .../users/GetRemoteUserInfoOperation.java | 6 +-- .../users/GetRemoteUserQuotaOperation.java | 4 +- 41 files changed, 117 insertions(+), 181 deletions(-) delete mode 100644 src/com/owncloud/android/lib/common/http/HttpUtils.java diff --git a/src/com/owncloud/android/lib/common/SingleSessionManager.java b/src/com/owncloud/android/lib/common/SingleSessionManager.java index 911ac59d..e36f5fe2 100644 --- a/src/com/owncloud/android/lib/common/SingleSessionManager.java +++ b/src/com/owncloud/android/lib/common/SingleSessionManager.java @@ -57,10 +57,10 @@ public class SingleSessionManager implements OwnCloudClientManager { private static final String TAG = SingleSessionManager.class.getSimpleName(); private ConcurrentMap mClientsWithKnownUsername = - new ConcurrentHashMap(); + new ConcurrentHashMap<>(); private ConcurrentMap mClientsWithUnknownUsername = - new ConcurrentHashMap(); + new ConcurrentHashMap<>(); @Override @@ -80,8 +80,7 @@ public class SingleSessionManager implements OwnCloudClientManager { String sessionName = account.getCredentials() == null ? "" : AccountUtils.buildAccountName( account.getBaseUri(), - account.getCredentials().getAuthToken() - ); + account.getCredentials().getAuthToken()); if (accountName != null) { client = mClientsWithKnownUsername.get(accountName); diff --git a/src/com/owncloud/android/lib/common/authentication/oauth/OAuth2GetAccessTokenOperation.java b/src/com/owncloud/android/lib/common/authentication/oauth/OAuth2GetAccessTokenOperation.java index 6d06cdc2..6d0e9b8c 100644 --- a/src/com/owncloud/android/lib/common/authentication/oauth/OAuth2GetAccessTokenOperation.java +++ b/src/com/owncloud/android/lib/common/authentication/oauth/OAuth2GetAccessTokenOperation.java @@ -38,6 +38,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCo import org.json.JSONObject; +import java.net.URL; import java.util.ArrayList; import java.util.Map; @@ -98,7 +99,7 @@ public class OAuth2GetAccessTokenOperation extends RemoteOperation { Uri.Builder uriBuilder = client.getBaseUri().buildUpon(); uriBuilder.appendEncodedPath(mAccessTokenEndpointPath); - final PostMethod postMethod = new PostMethod(HttpUrl.parse( + final PostMethod postMethod = new PostMethod(new URL( client.getBaseUri().buildUpon() .appendEncodedPath(mAccessTokenEndpointPath) .build() diff --git a/src/com/owncloud/android/lib/common/authentication/oauth/OAuth2RefreshAccessTokenOperation.java b/src/com/owncloud/android/lib/common/authentication/oauth/OAuth2RefreshAccessTokenOperation.java index d8cb3a50..7f182b49 100644 --- a/src/com/owncloud/android/lib/common/authentication/oauth/OAuth2RefreshAccessTokenOperation.java +++ b/src/com/owncloud/android/lib/common/authentication/oauth/OAuth2RefreshAccessTokenOperation.java @@ -33,6 +33,7 @@ import com.owncloud.android.lib.common.utils.Log_OC; import org.json.JSONObject; +import java.net.URL; import java.util.ArrayList; import java.util.Map; @@ -90,7 +91,7 @@ public class OAuth2RefreshAccessTokenOperation extends RemoteOperation { Uri.Builder uriBuilder = client.getBaseUri().buildUpon(); uriBuilder.appendEncodedPath(mAccessTokenEndpointPath); - final PostMethod postMethod = new PostMethod(HttpUrl.parse( + final PostMethod postMethod = new PostMethod(new URL( client.getBaseUri().buildUpon() .appendEncodedPath(mAccessTokenEndpointPath) .build() diff --git a/src/com/owncloud/android/lib/common/http/HttpUtils.java b/src/com/owncloud/android/lib/common/http/HttpUtils.java deleted file mode 100644 index 588d5aa3..00000000 --- a/src/com/owncloud/android/lib/common/http/HttpUtils.java +++ /dev/null @@ -1,37 +0,0 @@ -/* ownCloud Android Library is available under MIT license - * Copyright (C) 2018 ownCloud GmbH. - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND - * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS - * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN - * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - * - */ - -package com.owncloud.android.lib.common.http; - -import okhttp3.HttpUrl; - -/** - * @author David González Verdugo - */ -public class HttpUtils { - - public static HttpUrl stringUrlToHttpUrl(String url) { - return HttpUrl.parse(url); - } -} \ No newline at end of file diff --git a/src/com/owncloud/android/lib/common/http/methods/HttpBaseMethod.java b/src/com/owncloud/android/lib/common/http/methods/HttpBaseMethod.java index c1ffd5c2..7ea9b3e1 100644 --- a/src/com/owncloud/android/lib/common/http/methods/HttpBaseMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/HttpBaseMethod.java @@ -28,6 +28,7 @@ import com.owncloud.android.lib.common.http.HttpClient; import java.io.IOException; import java.io.InputStream; +import java.net.URL; import java.util.concurrent.TimeUnit; import okhttp3.Call; @@ -52,10 +53,10 @@ public abstract class HttpBaseMethod { protected Response mResponse; protected Call mCall; - protected HttpBaseMethod (HttpUrl httpUrl) { + protected HttpBaseMethod (URL url) { mOkHttpClient = HttpClient.getOkHttpClient(); mRequest = new Request.Builder() - .url(httpUrl) + .url(HttpUrl.parse(url.toString())) .build(); } diff --git a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/DeleteMethod.java b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/DeleteMethod.java index 249dc520..5b9c6d1b 100644 --- a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/DeleteMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/DeleteMethod.java @@ -25,6 +25,7 @@ package com.owncloud.android.lib.common.http.methods.nonwebdav; import java.io.IOException; +import java.net.URL; import okhttp3.HttpUrl; @@ -34,8 +35,8 @@ import okhttp3.HttpUrl; */ public class DeleteMethod extends HttpMethod{ - public DeleteMethod(HttpUrl httpUrl) { - super(httpUrl); + public DeleteMethod(URL url) { + super(url); } @Override diff --git a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/GetMethod.java b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/GetMethod.java index 9e33df29..183a7299 100644 --- a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/GetMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/GetMethod.java @@ -25,6 +25,7 @@ package com.owncloud.android.lib.common.http.methods.nonwebdav; import java.io.IOException; +import java.net.URL; import okhttp3.HttpUrl; @@ -34,8 +35,8 @@ import okhttp3.HttpUrl; */ public class GetMethod extends HttpMethod { - public GetMethod(HttpUrl httpUrl) { - super(httpUrl); + public GetMethod(URL url) { + super(url); } @Override diff --git a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/HttpMethod.java b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/HttpMethod.java index 0321bf15..3c73bf3f 100644 --- a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/HttpMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/HttpMethod.java @@ -27,6 +27,7 @@ package com.owncloud.android.lib.common.http.methods.nonwebdav; import com.owncloud.android.lib.common.http.methods.HttpBaseMethod; import java.io.IOException; +import java.net.URL; import okhttp3.Call; import okhttp3.HttpUrl; @@ -38,8 +39,8 @@ import okhttp3.HttpUrl; */ public abstract class HttpMethod extends HttpBaseMethod { - public HttpMethod(HttpUrl httpUrl) { - super(httpUrl); + public HttpMethod(URL url) { + super(url); } @Override diff --git a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/PostMethod.java b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/PostMethod.java index 5d0a3c7f..970252e1 100644 --- a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/PostMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/PostMethod.java @@ -25,6 +25,7 @@ package com.owncloud.android.lib.common.http.methods.nonwebdav; import java.io.IOException; +import java.net.URL; import okhttp3.HttpUrl; @@ -34,8 +35,8 @@ import okhttp3.HttpUrl; */ public class PostMethod extends HttpMethod { - public PostMethod(HttpUrl httpUrl){ - super(httpUrl); + public PostMethod(URL url){ + super(url); } @Override diff --git a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/PutMethod.java b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/PutMethod.java index ede0db28..6497b002 100644 --- a/src/com/owncloud/android/lib/common/http/methods/nonwebdav/PutMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/nonwebdav/PutMethod.java @@ -25,13 +25,14 @@ package com.owncloud.android.lib.common.http.methods.nonwebdav; import java.io.IOException; +import java.net.URL; import okhttp3.HttpUrl; public class PutMethod extends HttpMethod{ - public PutMethod(HttpUrl httpUrl){ - super(httpUrl); + public PutMethod(URL url){ + super(url); } @Override diff --git a/src/com/owncloud/android/lib/common/http/methods/webdav/CopyMethod.java b/src/com/owncloud/android/lib/common/http/methods/webdav/CopyMethod.java index e133c536..c1978c52 100644 --- a/src/com/owncloud/android/lib/common/http/methods/webdav/CopyMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/webdav/CopyMethod.java @@ -1,5 +1,7 @@ package com.owncloud.android.lib.common.http.methods.webdav; +import java.net.URL; + import at.bitfire.dav4android.exception.UnauthorizedException; import okhttp3.HttpUrl; @@ -8,8 +10,8 @@ public class CopyMethod extends DavMethod { final String destinationUrl; final boolean forceOverride; - public CopyMethod(HttpUrl httpUrl, String destinationUrl, boolean forceOverride) { - super(httpUrl); + public CopyMethod(URL url, String destinationUrl, boolean forceOverride) { + super(url); this.destinationUrl = destinationUrl; this.forceOverride = forceOverride; } diff --git a/src/com/owncloud/android/lib/common/http/methods/webdav/DavMethod.java b/src/com/owncloud/android/lib/common/http/methods/webdav/DavMethod.java index caed4780..f10a7ddb 100644 --- a/src/com/owncloud/android/lib/common/http/methods/webdav/DavMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/webdav/DavMethod.java @@ -27,6 +27,7 @@ package com.owncloud.android.lib.common.http.methods.webdav; import com.owncloud.android.lib.common.http.HttpClient; import com.owncloud.android.lib.common.http.methods.HttpBaseMethod; +import java.net.URL; import java.util.concurrent.TimeUnit; import at.bitfire.dav4android.DavOCResource; @@ -42,12 +43,11 @@ public abstract class DavMethod extends HttpBaseMethod { protected DavOCResource mDavResource; - protected DavMethod(HttpUrl httpUrl) { - super(httpUrl); + protected DavMethod(URL url) { + super(url); mDavResource = new DavOCResource( mOkHttpClient, - httpUrl - ); + HttpUrl.parse(url.toString())); mDavResource.setFollowRedirects(false); } diff --git a/src/com/owncloud/android/lib/common/http/methods/webdav/MkColMethod.java b/src/com/owncloud/android/lib/common/http/methods/webdav/MkColMethod.java index 91a13d5b..ace87d67 100644 --- a/src/com/owncloud/android/lib/common/http/methods/webdav/MkColMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/webdav/MkColMethod.java @@ -1,11 +1,12 @@ package com.owncloud.android.lib.common.http.methods.webdav; +import java.net.URL; + import at.bitfire.dav4android.exception.UnauthorizedException; -import okhttp3.HttpUrl; public class MkColMethod extends DavMethod { - public MkColMethod(HttpUrl httpUrl) { - super(httpUrl); + public MkColMethod(URL url) { + super(url); } @Override diff --git a/src/com/owncloud/android/lib/common/http/methods/webdav/MoveMethod.java b/src/com/owncloud/android/lib/common/http/methods/webdav/MoveMethod.java index b5f1e65a..be4cfa34 100644 --- a/src/com/owncloud/android/lib/common/http/methods/webdav/MoveMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/webdav/MoveMethod.java @@ -2,15 +2,16 @@ package com.owncloud.android.lib.common.http.methods.webdav; import com.owncloud.android.lib.common.http.HttpConstants; +import java.net.URL; + import at.bitfire.dav4android.exception.UnauthorizedException; -import okhttp3.HttpUrl; public class MoveMethod extends DavMethod { final String destinationUrl; final boolean forceOverride; - public MoveMethod(HttpUrl httpUrl, String destinationUrl, boolean forceOverride) { - super(httpUrl); + public MoveMethod(URL url, String destinationUrl, boolean forceOverride) { + super(url); this.destinationUrl = destinationUrl; this.forceOverride = forceOverride; } diff --git a/src/com/owncloud/android/lib/common/http/methods/webdav/PropfindMethod.java b/src/com/owncloud/android/lib/common/http/methods/webdav/PropfindMethod.java index f509c002..29560612 100644 --- a/src/com/owncloud/android/lib/common/http/methods/webdav/PropfindMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/webdav/PropfindMethod.java @@ -25,6 +25,7 @@ package com.owncloud.android.lib.common.http.methods.webdav; import java.io.IOException; +import java.net.URL; import java.util.Set; import at.bitfire.dav4android.DavResource; @@ -44,8 +45,8 @@ public class PropfindMethod extends DavMethod { private Property.Name[] mProperties; private Set mMembers; - public PropfindMethod(HttpUrl httpUrl, int depth, Property.Name[] properties) { - super(httpUrl); + public PropfindMethod(URL url, int depth, Property.Name[] properties) { + super(url); mDepth = depth; mProperties = properties; }; diff --git a/src/com/owncloud/android/lib/common/http/methods/webdav/PutMethod.java b/src/com/owncloud/android/lib/common/http/methods/webdav/PutMethod.java index 24e4c660..80a48ed1 100644 --- a/src/com/owncloud/android/lib/common/http/methods/webdav/PutMethod.java +++ b/src/com/owncloud/android/lib/common/http/methods/webdav/PutMethod.java @@ -27,6 +27,7 @@ package com.owncloud.android.lib.common.http.methods.webdav; import com.owncloud.android.lib.common.http.HttpConstants; import java.io.IOException; +import java.net.URL; import at.bitfire.dav4android.exception.DavException; import at.bitfire.dav4android.exception.HttpException; @@ -40,8 +41,8 @@ import okhttp3.RequestBody; */ public class PutMethod extends DavMethod { - public PutMethod(HttpUrl httpUrl) { - super(httpUrl); + public PutMethod(URL url) { + super(url); }; @Override diff --git a/src/com/owncloud/android/lib/common/network/NetworkUtils.java b/src/com/owncloud/android/lib/common/network/NetworkUtils.java index 71740bc1..d9e79706 100644 --- a/src/com/owncloud/android/lib/common/network/NetworkUtils.java +++ b/src/com/owncloud/android/lib/common/network/NetworkUtils.java @@ -29,19 +29,13 @@ import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; -import java.security.GeneralSecurityException; import java.security.KeyStore; import java.security.KeyStoreException; import java.security.NoSuchAlgorithmException; import java.security.cert.Certificate; import java.security.cert.CertificateException; -import javax.net.ssl.SSLContext; -import javax.net.ssl.TrustManager; - - -import org.apache.http.conn.ssl.BrowserCompatHostnameVerifier; import org.apache.http.conn.ssl.X509HostnameVerifier; import android.content.Context; diff --git a/src/com/owncloud/android/lib/common/utils/Log_OC.java b/src/com/owncloud/android/lib/common/utils/Log_OC.java index 9670061f..23e0bd84 100644 --- a/src/com/owncloud/android/lib/common/utils/Log_OC.java +++ b/src/com/owncloud/android/lib/common/utils/Log_OC.java @@ -63,11 +63,6 @@ public class Log_OC { Log.w(TAG, message); appendLog(TAG+" : "+ message); } - - public static void wtf(String TAG, String message) { - Log.wtf(TAG, message); - appendLog(TAG+" : "+ message); - } /** * Start doing logging diff --git a/src/com/owncloud/android/lib/resources/files/CopyRemoteFileOperation.java b/src/com/owncloud/android/lib/resources/files/CopyRemoteFileOperation.java index 2138b226..cc0d9228 100644 --- a/src/com/owncloud/android/lib/resources/files/CopyRemoteFileOperation.java +++ b/src/com/owncloud/android/lib/resources/files/CopyRemoteFileOperation.java @@ -35,6 +35,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode; import com.owncloud.android.lib.resources.status.OwnCloudVersion; +import java.net.URL; import java.util.concurrent.TimeUnit; import okhttp3.HttpUrl; @@ -103,8 +104,7 @@ public class CopyRemoteFileOperation extends RemoteOperation { /// perform remote operation RemoteOperationResult result = null; try { - CopyMethod copyMethod = new CopyMethod( - HttpUrl.parse(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mSrcRemotePath)), + CopyMethod copyMethod = new CopyMethod(new URL(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mSrcRemotePath)), client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mTargetRemotePath), mOverwrite); diff --git a/src/com/owncloud/android/lib/resources/files/CreateRemoteFolderOperation.java b/src/com/owncloud/android/lib/resources/files/CreateRemoteFolderOperation.java index b8727aab..eb85b53a 100644 --- a/src/com/owncloud/android/lib/resources/files/CreateRemoteFolderOperation.java +++ b/src/com/owncloud/android/lib/resources/files/CreateRemoteFolderOperation.java @@ -37,6 +37,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCo import com.owncloud.android.lib.common.utils.Log_OC; import com.owncloud.android.lib.resources.status.OwnCloudVersion; +import java.net.URL; import java.util.concurrent.TimeUnit; import okhttp3.HttpUrl; @@ -104,7 +105,7 @@ public class CreateRemoteFolderOperation extends RemoteOperation { RemoteOperationResult result; try { Uri webDavUri = createChunksFolder ? client.getNewUploadsWebDavUri() : client.getNewFilesWebDavUri(); - final MkColMethod mkcol = new MkColMethod(HttpUrl.parse(webDavUri + WebdavUtils.encodePath(mRemotePath))); + final MkColMethod mkcol = new MkColMethod(new URL(webDavUri + WebdavUtils.encodePath(mRemotePath))); mkcol.setReadTimeout(READ_TIMEOUT, TimeUnit.SECONDS); mkcol.setConnectionTimeout(CONNECTION_TIMEOUT, TimeUnit.SECONDS); final int status = client.executeHttpMethod(mkcol); diff --git a/src/com/owncloud/android/lib/resources/files/DownloadRemoteFileOperation.java b/src/com/owncloud/android/lib/resources/files/DownloadRemoteFileOperation.java index 057281cd..0e1493ae 100644 --- a/src/com/owncloud/android/lib/resources/files/DownloadRemoteFileOperation.java +++ b/src/com/owncloud/android/lib/resources/files/DownloadRemoteFileOperation.java @@ -37,6 +37,7 @@ import com.owncloud.android.lib.common.utils.Log_OC; import java.io.BufferedInputStream; import java.io.File; import java.io.FileOutputStream; +import java.net.URL; import java.util.Date; import java.util.HashSet; import java.util.Iterator; @@ -102,7 +103,7 @@ public class DownloadRemoteFileOperation extends RemoteOperation { RemoteOperationResult result; int status; boolean savedFile = false; - mGet = new GetMethod(HttpUrl.parse(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath))); + mGet = new GetMethod(new URL(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath))); Iterator it; FileOutputStream fos = null; diff --git a/src/com/owncloud/android/lib/resources/files/ExistenceCheckRemoteOperation.java b/src/com/owncloud/android/lib/resources/files/ExistenceCheckRemoteOperation.java index bf9090cd..c94b2029 100644 --- a/src/com/owncloud/android/lib/resources/files/ExistenceCheckRemoteOperation.java +++ b/src/com/owncloud/android/lib/resources/files/ExistenceCheckRemoteOperation.java @@ -26,7 +26,6 @@ package com.owncloud.android.lib.resources.files; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.webdav.DavUtils; import com.owncloud.android.lib.common.http.methods.webdav.PropfindMethod; import com.owncloud.android.lib.common.network.RedirectionPath; @@ -35,6 +34,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; +import java.net.URL; import java.util.concurrent.TimeUnit; import static com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode.OK; @@ -54,9 +54,6 @@ public class ExistenceCheckRemoteOperation extends RemoteOperation { private static final String TAG = ExistenceCheckRemoteOperation.class.getSimpleName(); - private static final int FORBIDDEN_ERROR = 403; - private static final int SERVICE_UNAVAILABLE_ERROR = 503; - private String mPath; private boolean mSuccessIfAbsent; @@ -79,23 +76,19 @@ public class ExistenceCheckRemoteOperation extends RemoteOperation { @Override protected RemoteOperationResult run(OwnCloudClient client) { - RemoteOperationResult result; - // TODO Complete redirection stuff, although OkHttp should follow redirections by default -// boolean previousFollowRedirects = client.getFollowRedirects(); try { - client.setFollowRedirects(true); PropfindMethod propfindMethod = new PropfindMethod( - HttpUtils.stringUrlToHttpUrl(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mPath)), + new URL(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mPath)), 0, DavUtils.getAllPropset()); propfindMethod.setReadTimeout(TIMEOUT, TimeUnit.SECONDS); propfindMethod.setConnectionTimeout(TIMEOUT, TimeUnit.SECONDS); - int status = client.executeHttpMethod(propfindMethod); + final int status = client.executeHttpMethod(propfindMethod); /** * PROPFIND method @@ -103,25 +96,25 @@ public class ExistenceCheckRemoteOperation extends RemoteOperation { * 207 MULTI_STATUS: path exists. */ - result = isSuccess(status) - ? new RemoteOperationResult(OK) - : new RemoteOperationResult(propfindMethod); - Log_OC.d(TAG, "Existence check for " + client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mPath) + " targeting for " + (mSuccessIfAbsent ? " absence " : " existence ") + "finished with HTTP status " + status + (!isSuccess(status) ? "(FAIL)" : "")); + return isSuccess(status) + ? new RemoteOperationResult(OK) + : new RemoteOperationResult(propfindMethod); + } catch (Exception e) { - result = new RemoteOperationResult(e); + final RemoteOperationResult result = new RemoteOperationResult(e); Log_OC.e(TAG, "Existence check for " + client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mPath) + " targeting for " + (mSuccessIfAbsent ? " absence " : " existence ") + ": " + result.getLogMessage(), result.getException()); + return result; } - return result; } /** diff --git a/src/com/owncloud/android/lib/resources/files/MoveRemoteFileOperation.java b/src/com/owncloud/android/lib/resources/files/MoveRemoteFileOperation.java index 7b291b66..04628f10 100644 --- a/src/com/owncloud/android/lib/resources/files/MoveRemoteFileOperation.java +++ b/src/com/owncloud/android/lib/resources/files/MoveRemoteFileOperation.java @@ -36,6 +36,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode; import com.owncloud.android.lib.resources.status.OwnCloudVersion; +import java.net.URL; import java.util.concurrent.TimeUnit; import okhttp3.HttpUrl; @@ -115,7 +116,7 @@ public class MoveRemoteFileOperation extends RemoteOperation { Uri srcWebDavUri = moveChunkedFile ? client.getNewUploadsWebDavUri() : client.getNewFilesWebDavUri(); final MoveMethod move = new MoveMethod( - HttpUrl.parse(srcWebDavUri + WebdavUtils.encodePath(mSrcRemotePath)), + new URL(srcWebDavUri + WebdavUtils.encodePath(mSrcRemotePath)), client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mTargetRemotePath), mOverwrite); diff --git a/src/com/owncloud/android/lib/resources/files/ReadRemoteFileOperation.java b/src/com/owncloud/android/lib/resources/files/ReadRemoteFileOperation.java index 437118b5..432dc1c5 100644 --- a/src/com/owncloud/android/lib/resources/files/ReadRemoteFileOperation.java +++ b/src/com/owncloud/android/lib/resources/files/ReadRemoteFileOperation.java @@ -32,6 +32,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; +import java.net.URL; import java.util.ArrayList; import java.util.concurrent.TimeUnit; @@ -78,8 +79,7 @@ public class ReadRemoteFileOperation extends RemoteOperation { /// take the duty of check the server for the current state of the file there try { // remote request - propfind = new PropfindMethod( - HttpUrl.parse(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath)), + propfind = new PropfindMethod(new URL(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath)), DEPTH_0, DavUtils.getAllPropset()); diff --git a/src/com/owncloud/android/lib/resources/files/ReadRemoteFolderOperation.java b/src/com/owncloud/android/lib/resources/files/ReadRemoteFolderOperation.java index 4d2a22f7..b54cbd0f 100644 --- a/src/com/owncloud/android/lib/resources/files/ReadRemoteFolderOperation.java +++ b/src/com/owncloud/android/lib/resources/files/ReadRemoteFolderOperation.java @@ -26,7 +26,6 @@ package com.owncloud.android.lib.resources.files; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.webdav.DavConstants; import com.owncloud.android.lib.common.http.methods.webdav.DavUtils; import com.owncloud.android.lib.common.http.methods.webdav.PropfindMethod; @@ -35,6 +34,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; +import java.net.URL; import java.util.ArrayList; import at.bitfire.dav4android.DavResource; @@ -75,7 +75,7 @@ public class ReadRemoteFolderOperation extends RemoteOperation { try { PropfindMethod propfindMethod = new PropfindMethod( - HttpUtils.stringUrlToHttpUrl(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath)), + new URL(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath)), DavConstants.DEPTH_1, DavUtils.getAllPropset()); diff --git a/src/com/owncloud/android/lib/resources/files/RemoveRemoteFileOperation.java b/src/com/owncloud/android/lib/resources/files/RemoveRemoteFileOperation.java index 7fed429c..7be42e00 100644 --- a/src/com/owncloud/android/lib/resources/files/RemoveRemoteFileOperation.java +++ b/src/com/owncloud/android/lib/resources/files/RemoveRemoteFileOperation.java @@ -28,13 +28,14 @@ import android.net.Uri; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.DeleteMethod; import com.owncloud.android.lib.common.network.WebdavUtils; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; +import java.net.URL; + import static com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode.OK; /** @@ -72,8 +73,7 @@ public class RemoveRemoteFileOperation extends RemoteOperation { Uri srcWebDavUri = removeChunksFolder ? client.getNewUploadsWebDavUri() : client.getNewFilesWebDavUri(); DeleteMethod deleteMethod = new DeleteMethod( - HttpUtils.stringUrlToHttpUrl(srcWebDavUri + WebdavUtils.encodePath(mRemotePath)) - ); + new URL(srcWebDavUri + WebdavUtils.encodePath(mRemotePath))); int status = client.executeHttpMethod(deleteMethod); diff --git a/src/com/owncloud/android/lib/resources/files/RenameRemoteFileOperation.java b/src/com/owncloud/android/lib/resources/files/RenameRemoteFileOperation.java index ab1605a1..b9f4de28 100644 --- a/src/com/owncloud/android/lib/resources/files/RenameRemoteFileOperation.java +++ b/src/com/owncloud/android/lib/resources/files/RenameRemoteFileOperation.java @@ -25,6 +25,7 @@ package com.owncloud.android.lib.resources.files; import java.io.File; +import java.net.URL; import java.util.concurrent.TimeUnit; import com.owncloud.android.lib.common.OwnCloudClient; @@ -106,7 +107,7 @@ public class RenameRemoteFileOperation extends RemoteOperation { return new RemoteOperationResult(ResultCode.INVALID_OVERWRITE); } - final MoveMethod move = new MoveMethod(HttpUrl.parse(client.getNewFilesWebDavUri() + + final MoveMethod move = new MoveMethod(new URL(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mOldRemotePath)), client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mNewRemotePath), false); diff --git a/src/com/owncloud/android/lib/resources/files/UploadRemoteFileOperation.java b/src/com/owncloud/android/lib/resources/files/UploadRemoteFileOperation.java index e645342f..1010371f 100644 --- a/src/com/owncloud/android/lib/resources/files/UploadRemoteFileOperation.java +++ b/src/com/owncloud/android/lib/resources/files/UploadRemoteFileOperation.java @@ -26,7 +26,6 @@ package com.owncloud.android.lib.resources.files; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.webdav.PutMethod; import com.owncloud.android.lib.common.network.FileRequestBody; import com.owncloud.android.lib.common.network.OnDatatransferProgressListener; @@ -37,6 +36,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; import java.io.File; +import java.net.URL; import java.util.HashSet; import java.util.Set; import java.util.concurrent.atomic.AtomicBoolean; @@ -89,7 +89,7 @@ public class UploadRemoteFileOperation extends RemoteOperation { try { mPutMethod = new PutMethod( - HttpUtils.stringUrlToHttpUrl(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath))); + new URL(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath))); mPutMethod.setRetryOnConnectionFailure(false); diff --git a/src/com/owncloud/android/lib/resources/files/chunks/ChunkedUploadRemoteFileOperation.java b/src/com/owncloud/android/lib/resources/files/chunks/ChunkedUploadRemoteFileOperation.java index 905944ad..c14a6f88 100644 --- a/src/com/owncloud/android/lib/resources/files/chunks/ChunkedUploadRemoteFileOperation.java +++ b/src/com/owncloud/android/lib/resources/files/chunks/ChunkedUploadRemoteFileOperation.java @@ -25,7 +25,6 @@ package com.owncloud.android.lib.resources.files.chunks; import com.owncloud.android.lib.common.OwnCloudClient; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.webdav.PutMethod; import com.owncloud.android.lib.common.network.ChunkFromFileRequestBody; import com.owncloud.android.lib.common.operations.OperationCancelledException; @@ -36,6 +35,7 @@ import com.owncloud.android.lib.resources.files.UploadRemoteFileOperation; import java.io.File; import java.io.RandomAccessFile; +import java.net.URL; import java.nio.channels.FileChannel; import java.util.concurrent.TimeUnit; @@ -90,7 +90,7 @@ public class ChunkedUploadRemoteFileOperation extends UploadRemoteFileOperation for (int chunkIndex = 0; chunkIndex < chunkCount; chunkIndex++, offset += CHUNK_SIZE) { mPutMethod = new PutMethod( - HttpUtils.stringUrlToHttpUrl(uriPrefix + FileUtils.PATH_SEPARATOR + chunkIndex) + new URL(uriPrefix + FileUtils.PATH_SEPARATOR + chunkIndex) ); if (mRequiredEtag != null && mRequiredEtag.length() > 0) { diff --git a/src/com/owncloud/android/lib/resources/shares/CreateRemoteShareOperation.java b/src/com/owncloud/android/lib/resources/shares/CreateRemoteShareOperation.java index b35dc885..8caace0b 100644 --- a/src/com/owncloud/android/lib/resources/shares/CreateRemoteShareOperation.java +++ b/src/com/owncloud/android/lib/resources/shares/CreateRemoteShareOperation.java @@ -31,12 +31,12 @@ import android.net.Uri; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.PostMethod; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; +import java.net.URL; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; @@ -230,9 +230,7 @@ public class CreateRemoteShareOperation extends RemoteOperation { Uri.Builder uriBuilder = requestUri.buildUpon(); uriBuilder.appendEncodedPath(ShareUtils.SHARING_API_PATH); - PostMethod postMethod = new PostMethod( - HttpUtils.stringUrlToHttpUrl(uriBuilder.build().toString()) - ); + PostMethod postMethod = new PostMethod(new URL(uriBuilder.build().toString())); postMethod.setRequestBody(formBodyBuilder.build()); diff --git a/src/com/owncloud/android/lib/resources/shares/GetRemoteShareOperation.java b/src/com/owncloud/android/lib/resources/shares/GetRemoteShareOperation.java index ad61f5a9..3945c506 100644 --- a/src/com/owncloud/android/lib/resources/shares/GetRemoteShareOperation.java +++ b/src/com/owncloud/android/lib/resources/shares/GetRemoteShareOperation.java @@ -30,12 +30,13 @@ import android.net.Uri; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.GetMethod; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; +import java.net.URL; + /** * Get the data about a Share resource, known its remote ID. * @@ -64,9 +65,7 @@ public class GetRemoteShareOperation extends RemoteOperation { uriBuilder.appendEncodedPath(ShareUtils.SHARING_API_PATH); uriBuilder.appendEncodedPath(Long.toString(mRemoteId)); - GetMethod getMethod = new GetMethod( - HttpUtils.stringUrlToHttpUrl(uriBuilder.build().toString()) - ); + GetMethod getMethod = new GetMethod(new URL(uriBuilder.build().toString())); getMethod.addRequestHeader(OCS_API_HEADER, OCS_API_HEADER_VALUE); diff --git a/src/com/owncloud/android/lib/resources/shares/GetRemoteShareesOperation.java b/src/com/owncloud/android/lib/resources/shares/GetRemoteShareesOperation.java index 97836665..0574ba1a 100644 --- a/src/com/owncloud/android/lib/resources/shares/GetRemoteShareesOperation.java +++ b/src/com/owncloud/android/lib/resources/shares/GetRemoteShareesOperation.java @@ -32,7 +32,6 @@ import android.net.Uri; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.GetMethod; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; @@ -41,6 +40,7 @@ import com.owncloud.android.lib.common.utils.Log_OC; import org.json.JSONArray; import org.json.JSONObject; +import java.net.URL; import java.util.ArrayList; import static com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode.OK; @@ -123,17 +123,15 @@ public class GetRemoteShareesOperation extends RemoteOperation{ try{ Uri requestUri = client.getBaseUri(); - Uri.Builder uriBuilder = requestUri.buildUpon(); - uriBuilder.appendEncodedPath(OCS_ROUTE); - uriBuilder.appendQueryParameter(PARAM_FORMAT, VALUE_FORMAT); - uriBuilder.appendQueryParameter(PARAM_ITEM_TYPE, VALUE_ITEM_TYPE); - uriBuilder.appendQueryParameter(PARAM_SEARCH, mSearchString); - uriBuilder.appendQueryParameter(PARAM_PAGE, String.valueOf(mPage)); - uriBuilder.appendQueryParameter(PARAM_PER_PAGE, String.valueOf(mPerPage)); + Uri.Builder uriBuilder = requestUri.buildUpon() + .appendEncodedPath(OCS_ROUTE) + .appendQueryParameter(PARAM_FORMAT, VALUE_FORMAT) + .appendQueryParameter(PARAM_ITEM_TYPE, VALUE_ITEM_TYPE) + .appendQueryParameter(PARAM_SEARCH, mSearchString) + .appendQueryParameter(PARAM_PAGE, String.valueOf(mPage)) + .appendQueryParameter(PARAM_PER_PAGE, String.valueOf(mPerPage)); - GetMethod getMethod = new GetMethod( - HttpUtils.stringUrlToHttpUrl(uriBuilder.build().toString()) - ); + GetMethod getMethod = new GetMethod(new URL(uriBuilder.build().toString())); getMethod.addRequestHeader(OCS_API_HEADER, OCS_API_HEADER_VALUE); diff --git a/src/com/owncloud/android/lib/resources/shares/GetRemoteSharesForFileOperation.java b/src/com/owncloud/android/lib/resources/shares/GetRemoteSharesForFileOperation.java index 02b36900..18409152 100644 --- a/src/com/owncloud/android/lib/resources/shares/GetRemoteSharesForFileOperation.java +++ b/src/com/owncloud/android/lib/resources/shares/GetRemoteSharesForFileOperation.java @@ -36,6 +36,8 @@ import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; +import java.net.URL; + import okhttp3.HttpUrl; /** @@ -81,19 +83,16 @@ public class GetRemoteSharesForFileOperation extends RemoteOperation { RemoteOperationResult result; try { + Uri requestUri = client.getBaseUri(); Uri.Builder uriBuilder = requestUri.buildUpon(); uriBuilder.appendEncodedPath(ShareUtils.SHARING_API_PATH); + uriBuilder.appendQueryParameter(PARAM_PATH, mRemoteFilePath); + uriBuilder.appendQueryParameter(PARAM_RESHARES, String.valueOf(mReshares)); + uriBuilder.appendQueryParameter(PARAM_SUBFILES, String.valueOf(mSubfiles)); - HttpUrl.Builder httpBuilder = HttpUrl - .parse(uriBuilder.build().toString()) - .newBuilder(); + GetMethod getMethod = new GetMethod(new URL(uriBuilder.build().toString())); - httpBuilder.addQueryParameter(PARAM_PATH, mRemoteFilePath); - httpBuilder.addQueryParameter(PARAM_RESHARES, String.valueOf(mReshares)); - httpBuilder.addQueryParameter(PARAM_SUBFILES, String.valueOf(mSubfiles)); - - GetMethod getMethod = new GetMethod(httpBuilder.build()); getMethod.addRequestHeader(OCS_API_HEADER, OCS_API_HEADER_VALUE); int status = client.executeHttpMethod(getMethod); diff --git a/src/com/owncloud/android/lib/resources/shares/GetRemoteSharesOperation.java b/src/com/owncloud/android/lib/resources/shares/GetRemoteSharesOperation.java index 7a64bb6b..28bd93d5 100644 --- a/src/com/owncloud/android/lib/resources/shares/GetRemoteSharesOperation.java +++ b/src/com/owncloud/android/lib/resources/shares/GetRemoteSharesOperation.java @@ -29,13 +29,12 @@ import android.net.Uri; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.GetMethod; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; -import okhttp3.Request; +import java.net.URL; /** * Get the data from the server about ALL the known shares owned by the requester. @@ -59,7 +58,7 @@ public class GetRemoteSharesOperation extends RemoteOperation { uriBuilder.appendEncodedPath(ShareUtils.SHARING_API_PATH); GetMethod getMethod = new GetMethod( - HttpUtils.stringUrlToHttpUrl(client.getBaseUri() + ShareUtils.SHARING_API_PATH) + new URL(client.getBaseUri() + ShareUtils.SHARING_API_PATH) ); getMethod.addRequestHeader(OCS_API_HEADER, OCS_API_HEADER_VALUE); diff --git a/src/com/owncloud/android/lib/resources/shares/RemoveRemoteShareOperation.java b/src/com/owncloud/android/lib/resources/shares/RemoveRemoteShareOperation.java index aba0937d..fb53f57b 100644 --- a/src/com/owncloud/android/lib/resources/shares/RemoveRemoteShareOperation.java +++ b/src/com/owncloud/android/lib/resources/shares/RemoveRemoteShareOperation.java @@ -31,13 +31,12 @@ import android.net.Uri; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.DeleteMethod; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; -import okhttp3.Request; +import java.net.URL; /** * Remove a share @@ -74,7 +73,8 @@ public class RemoveRemoteShareOperation extends RemoteOperation { uriBuilder.appendEncodedPath(String.valueOf(mRemoteShareId)); DeleteMethod deleteMethod = new DeleteMethod( - HttpUtils.stringUrlToHttpUrl(uriBuilder.build().toString())); + new URL(uriBuilder.build().toString()) + ); deleteMethod.addRequestHeader(OCS_API_HEADER, OCS_API_HEADER_VALUE); diff --git a/src/com/owncloud/android/lib/resources/shares/UpdateRemoteShareOperation.java b/src/com/owncloud/android/lib/resources/shares/UpdateRemoteShareOperation.java index df4996f2..d199ac6b 100644 --- a/src/com/owncloud/android/lib/resources/shares/UpdateRemoteShareOperation.java +++ b/src/com/owncloud/android/lib/resources/shares/UpdateRemoteShareOperation.java @@ -29,12 +29,12 @@ import android.net.Uri; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.PutMethod; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; +import java.net.URL; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Calendar; @@ -198,16 +198,12 @@ public class UpdateRemoteShareOperation extends RemoteOperation { formBodyBuilder.add(PARAM_PERMISSIONS, Integer.toString(mPermissions)); } - FormBody formBody = formBodyBuilder.build(); - Uri requestUri = client.getBaseUri(); Uri.Builder uriBuilder = requestUri.buildUpon(); uriBuilder.appendEncodedPath(ShareUtils.SHARING_API_PATH.substring(1)); uriBuilder.appendEncodedPath(Long.toString(mRemoteId)); - PutMethod putMethod = new PutMethod( - HttpUtils.stringUrlToHttpUrl(uriBuilder.build().toString()) - ); + PutMethod putMethod = new PutMethod(new URL(uriBuilder.build().toString())); putMethod.setRequestBody(formBodyBuilder.build()); diff --git a/src/com/owncloud/android/lib/resources/status/GetRemoteCapabilitiesOperation.java b/src/com/owncloud/android/lib/resources/status/GetRemoteCapabilitiesOperation.java index fa389fd4..598d24c5 100644 --- a/src/com/owncloud/android/lib/resources/status/GetRemoteCapabilitiesOperation.java +++ b/src/com/owncloud/android/lib/resources/status/GetRemoteCapabilitiesOperation.java @@ -31,7 +31,6 @@ import android.net.Uri; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.GetMethod; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; @@ -39,6 +38,7 @@ import com.owncloud.android.lib.common.utils.Log_OC; import org.json.JSONObject; +import java.net.URL; import java.util.ArrayList; import static com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode.OK; @@ -129,9 +129,7 @@ public class GetRemoteCapabilitiesOperation extends RemoteOperation { uriBuilder.appendEncodedPath(OCS_ROUTE); // avoid starting "/" in this method uriBuilder.appendQueryParameter(PARAM_FORMAT, VALUE_FORMAT); - GetMethod getMethod = new GetMethod( - HttpUtils.stringUrlToHttpUrl(uriBuilder.build().toString()) - ); + GetMethod getMethod = new GetMethod(new URL(uriBuilder.build().toString())); getMethod.addRequestHeader(OCS_API_HEADER, OCS_API_HEADER_VALUE); diff --git a/src/com/owncloud/android/lib/resources/status/GetRemoteStatusOperation.java b/src/com/owncloud/android/lib/resources/status/GetRemoteStatusOperation.java index 55e2c55a..60041b07 100644 --- a/src/com/owncloud/android/lib/resources/status/GetRemoteStatusOperation.java +++ b/src/com/owncloud/android/lib/resources/status/GetRemoteStatusOperation.java @@ -29,9 +29,7 @@ import android.net.ConnectivityManager; import android.net.Uri; import com.owncloud.android.lib.common.OwnCloudClient; -import com.owncloud.android.lib.common.http.HttpClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.GetMethod; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; @@ -40,17 +38,13 @@ import com.owncloud.android.lib.common.utils.Log_OC; import org.json.JSONException; import org.json.JSONObject; -import java.security.cert.CertPathValidatorException; -import java.sql.Time; +import java.net.URL; import java.util.ArrayList; import java.util.concurrent.TimeUnit; import javax.net.ssl.SSLPeerUnverifiedException; -import okhttp3.HttpUrl; - import static com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode.OK; -import static com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode.SSL_RECOVERABLE_PEER_UNVERIFIED; /** * Checks if the server is valid and if the server supports the Share API @@ -86,9 +80,7 @@ public class GetRemoteStatusOperation extends RemoteOperation { boolean retval = false; String baseUrlSt = client.getBaseUri().toString(); try { - GetMethod getMethod = new GetMethod( - HttpUtils.stringUrlToHttpUrl(baseUrlSt + OwnCloudClient.STATUS_PATH) - ); + GetMethod getMethod = new GetMethod(new URL(baseUrlSt + OwnCloudClient.STATUS_PATH)); getMethod.setReadTimeout(TRY_CONNECTION_TIMEOUT, TimeUnit.SECONDS); getMethod.setConnectionTimeout(TRY_CONNECTION_TIMEOUT, TimeUnit.SECONDS); @@ -113,7 +105,7 @@ public class GetRemoteStatusOperation extends RemoteOperation { redirectedLocation.startsWith(HTTP_PREFIX) ); - getMethod = new GetMethod(HttpUrl.parse(redirectedLocation)); + getMethod = new GetMethod(new URL(redirectedLocation)); getMethod.setReadTimeout(TRY_CONNECTION_TIMEOUT, TimeUnit.SECONDS); getMethod.setConnectionTimeout(TRY_CONNECTION_TIMEOUT, TimeUnit.SECONDS); diff --git a/src/com/owncloud/android/lib/resources/users/GetRemoteUserAvatarOperation.java b/src/com/owncloud/android/lib/resources/users/GetRemoteUserAvatarOperation.java index 1d72b7cb..e6358442 100644 --- a/src/com/owncloud/android/lib/resources/users/GetRemoteUserAvatarOperation.java +++ b/src/com/owncloud/android/lib/resources/users/GetRemoteUserAvatarOperation.java @@ -27,7 +27,6 @@ package com.owncloud.android.lib.resources.users; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.GetMethod; import com.owncloud.android.lib.common.network.WebdavUtils; import com.owncloud.android.lib.common.operations.RemoteOperation; @@ -39,6 +38,7 @@ import java.io.BufferedInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.InputStream; +import java.net.URL; import java.util.ArrayList; import static com.owncloud.android.lib.common.operations.RemoteOperationResult.ResultCode.OK; @@ -81,15 +81,12 @@ public class GetRemoteUserAvatarOperation extends RemoteOperation { ByteArrayOutputStream bos = null; try { - String url = + final String url = client.getBaseUri() + NON_OFFICIAL_AVATAR_PATH + client.getCredentials().getUsername() + "/" + mDimension; - ; Log_OC.d(TAG, "avatar URI: " + url); - getMethod = new GetMethod( - HttpUtils.stringUrlToHttpUrl(url) - ); + getMethod = new GetMethod(new URL(url)); int status = client.executeHttpMethod(getMethod); diff --git a/src/com/owncloud/android/lib/resources/users/GetRemoteUserInfoOperation.java b/src/com/owncloud/android/lib/resources/users/GetRemoteUserInfoOperation.java index 1eeea6fd..0af89e3b 100644 --- a/src/com/owncloud/android/lib/resources/users/GetRemoteUserInfoOperation.java +++ b/src/com/owncloud/android/lib/resources/users/GetRemoteUserInfoOperation.java @@ -26,7 +26,6 @@ package com.owncloud.android.lib.resources.users; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.nonwebdav.GetMethod; import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; @@ -34,6 +33,7 @@ import com.owncloud.android.lib.common.utils.Log_OC; import org.json.JSONObject; +import java.net.URL; import java.util.ArrayList; import okhttp3.Request; @@ -77,9 +77,7 @@ public class GetRemoteUserInfoOperation extends RemoteOperation { .addHeader(OCS_API_HEADER, OCS_API_HEADER_VALUE) .build(); - GetMethod getMethod = new GetMethod( - HttpUtils.stringUrlToHttpUrl(client.getBaseUri() + OCS_ROUTE) - ); + GetMethod getMethod = new GetMethod(new URL(client.getBaseUri() + OCS_ROUTE)); int status = client.executeHttpMethod(getMethod); diff --git a/src/com/owncloud/android/lib/resources/users/GetRemoteUserQuotaOperation.java b/src/com/owncloud/android/lib/resources/users/GetRemoteUserQuotaOperation.java index 5dc16804..80ced859 100644 --- a/src/com/owncloud/android/lib/resources/users/GetRemoteUserQuotaOperation.java +++ b/src/com/owncloud/android/lib/resources/users/GetRemoteUserQuotaOperation.java @@ -29,7 +29,6 @@ package com.owncloud.android.lib.resources.users; import com.owncloud.android.lib.common.OwnCloudClient; import com.owncloud.android.lib.common.http.HttpConstants; -import com.owncloud.android.lib.common.http.HttpUtils; import com.owncloud.android.lib.common.http.methods.webdav.DavUtils; import com.owncloud.android.lib.common.http.methods.webdav.PropfindMethod; import com.owncloud.android.lib.common.network.WebdavUtils; @@ -37,6 +36,7 @@ import com.owncloud.android.lib.common.operations.RemoteOperation; import com.owncloud.android.lib.common.operations.RemoteOperationResult; import com.owncloud.android.lib.common.utils.Log_OC; +import java.net.URL; import java.util.ArrayList; import at.bitfire.dav4android.PropertyCollection; @@ -89,7 +89,7 @@ public class GetRemoteUserQuotaOperation extends RemoteOperation { try { PropfindMethod propfindMethod = new PropfindMethod( - HttpUtils.stringUrlToHttpUrl(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath)), + new URL(client.getNewFilesWebDavUri() + WebdavUtils.encodePath(mRemotePath)), DEPTH_0, DavUtils.getQuotaPropSet() );