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 ji...@apache.org on 2016/02/24 21:03:16 UTC

[34/50] [abbrv] hadoop git commit: HADOOP-11613. Remove commons-httpclient dependency from hadoop-azure. Contributed by Masatake Iwasaki.

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/HDFS-7240
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;
     }
   }