You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by cn...@apache.org on 2016/02/22 22:46:46 UTC
hadoop git commit: HADOOP-11613. Remove commons-httpclient dependency
from hadoop-azure. Contributed by Masatake Iwasaki.
Repository: hadoop
Updated Branches:
refs/heads/trunk a63301a86 -> d4f5fc23b
HADOOP-11613. Remove commons-httpclient dependency from hadoop-azure. Contributed by Masatake Iwasaki.
Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/d4f5fc23
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/d4f5fc23
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/d4f5fc23
Branch: refs/heads/trunk
Commit: d4f5fc23b208635e8f9a14c375d4101141aefa4a
Parents: a63301a
Author: cnauroth <cn...@apache.org>
Authored: Mon Feb 22 13:39:38 2016 -0800
Committer: cnauroth <cn...@apache.org>
Committed: Mon Feb 22 13:39:38 2016 -0800
----------------------------------------------------------------------
hadoop-common-project/hadoop-common/CHANGES.txt | 3 ++
.../hadoop/fs/azure/MockStorageInterface.java | 33 +++++++-------------
2 files changed, 15 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/hadoop/blob/d4f5fc23/hadoop-common-project/hadoop-common/CHANGES.txt
----------------------------------------------------------------------
diff --git a/hadoop-common-project/hadoop-common/CHANGES.txt b/hadoop-common-project/hadoop-common/CHANGES.txt
index e53c001..ff56c63 100644
--- a/hadoop-common-project/hadoop-common/CHANGES.txt
+++ b/hadoop-common-project/hadoop-common/CHANGES.txt
@@ -1137,6 +1137,9 @@ Release 2.8.0 - UNRELEASED
HADOOP-12828. Print user when services are started.
(Wei-Chiu Chuang via Yongjun Zhang)
+ HADOOP-11613. Remove commons-httpclient dependency from hadoop-azure.
+ (Masatake Iwasaki via cnauroth)
+
OPTIMIZATIONS
HADOOP-11785. Reduce the number of listStatus operation in distcp
http://git-wip-us.apache.org/repos/asf/hadoop/blob/d4f5fc23/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/MockStorageInterface.java
----------------------------------------------------------------------
diff --git a/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/MockStorageInterface.java b/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/MockStorageInterface.java
index 2bb2a9a..4fda017 100644
--- a/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/MockStorageInterface.java
+++ b/hadoop-tools/hadoop-azure/src/test/java/org/apache/hadoop/fs/azure/MockStorageInterface.java
@@ -33,9 +33,10 @@ import java.util.HashMap;
import java.util.HashSet;
import java.util.TimeZone;
import java.util.List;
-import org.apache.commons.httpclient.URIException;
-import org.apache.commons.httpclient.util.URIUtil;
+import org.apache.commons.codec.DecoderException;
+import org.apache.commons.codec.net.URLCodec;
import org.apache.commons.lang.NotImplementedException;
+import org.apache.http.client.utils.URIBuilder;
import com.microsoft.azure.storage.AccessCondition;
import com.microsoft.azure.storage.CloudStorageAccount;
@@ -68,6 +69,7 @@ public class MockStorageInterface extends StorageInterface {
private final ArrayList<PreExistingContainer> preExistingContainers =
new ArrayList<MockStorageInterface.PreExistingContainer>();
private String baseUriString;
+ private static final URLCodec codec = new URLCodec();
public InMemoryBlockBlobStore getBackingStore() {
return backingStore;
@@ -126,22 +128,17 @@ public class MockStorageInterface extends StorageInterface {
*/
private static String convertUriToDecodedString(URI uri) {
try {
- String result = URIUtil.decode(uri.toString());
- return result;
- } catch (URIException e) {
+ return codec.decode(uri.toString());
+ } catch (DecoderException e) {
throw new AssertionError("Failed to decode URI: " + uri.toString());
}
}
private static URI convertKeyToEncodedUri(String key) {
try {
- String encodedKey = URIUtil.encodePath(key);
- URI uri = new URI(encodedKey);
- return uri;
+ return new URIBuilder().setPath(key).build();
} catch (URISyntaxException e) {
throw new AssertionError("Failed to encode key: " + key);
- } catch (URIException e) {
- throw new AssertionError("Failed to encode key: " + key);
}
}
@@ -149,11 +146,8 @@ public class MockStorageInterface extends StorageInterface {
public CloudBlobContainerWrapper getContainerReference(String name)
throws URISyntaxException, StorageException {
String fullUri;
- try {
- fullUri = baseUriString + "/" + URIUtil.encodePath(name);
- } catch (URIException e) {
- throw new RuntimeException("problem encoding fullUri", e);
- }
+ URIBuilder builder = new URIBuilder(baseUriString);
+ fullUri = builder.setPath(builder.getPath() + "/" + name).toString();
MockCloudBlobContainerWrapper container = new MockCloudBlobContainerWrapper(
fullUri, name);
@@ -243,8 +237,6 @@ public class MockStorageInterface extends StorageInterface {
// helper to create full URIs for directory and blob.
// use withTrailingSlash=true to get a good path for a directory.
private String fullUriString(String relativePath, boolean withTrailingSlash) {
- String fullUri;
-
String baseUri = this.baseUri;
if (!baseUri.endsWith("/")) {
baseUri += "/";
@@ -255,12 +247,11 @@ public class MockStorageInterface extends StorageInterface {
}
try {
- fullUri = baseUri + URIUtil.encodePath(relativePath);
- } catch (URIException e) {
+ URIBuilder builder = new URIBuilder(baseUri);
+ return builder.setPath(builder.getPath() + relativePath).toString();
+ } catch (URISyntaxException e) {
throw new RuntimeException("problem encoding fullUri", e);
}
-
- return fullUri;
}
}