You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by li...@apache.org on 2020/02/17 00:53:58 UTC

[servicecomb-java-chassis] branch master updated (4ac6129 -> bdeb923)

This is an automated email from the ASF dual-hosted git repository.

liubao pushed a change to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git.


    from 4ac6129  [SCB-1767] adjust nacos config name
     new ac81779  [SCB-1748] support colon
     new e03a0e4  [SCB-1748] modify as comment
     new d019b7c  test IT
     new bdeb923  use spring way

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../servicecomb/common/rest/codec/param/PathProcessorCreator.java  | 6 ++++--
 .../servicecomb/common/rest/codec/param/TestPathProcessor.java     | 7 +++++++
 .../org/apache/servicecomb/foundation/common/http/HttpUtils.java   | 2 --
 3 files changed, 11 insertions(+), 4 deletions(-)


[servicecomb-java-chassis] 01/04: [SCB-1748] support colon

Posted by li...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git

commit ac817791d4de614d0161c2485c3dcb2c56ac6e2d
Author: GuoYL <gy...@gmail.com>
AuthorDate: Fri Feb 7 14:39:05 2020 +0800

    [SCB-1748] support colon
---
 .../servicecomb/common/rest/codec/param/PathProcessorCreator.java  | 7 ++++++-
 .../servicecomb/common/rest/codec/param/TestPathProcessor.java     | 7 +++++++
 2 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java b/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java
index 7ddddbf..896e870 100644
--- a/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java
+++ b/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java
@@ -17,7 +17,9 @@
 
 package org.apache.servicecomb.common.rest.codec.param;
 
+import java.io.UnsupportedEncodingException;
 import java.lang.reflect.Type;
+import java.net.URLDecoder;
 import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
@@ -41,7 +43,7 @@ public class PathProcessorCreator implements ParamValueProcessorCreator {
     }
 
     @Override
-    public Object getValue(HttpServletRequest request) {
+    public Object getValue(HttpServletRequest request) throws UnsupportedEncodingException {
       @SuppressWarnings("unchecked")
       Map<String, String> pathVarMap = (Map<String, String>) request.getAttribute(RestConst.PATH_PARAMETERS);
       if (pathVarMap == null) {
@@ -52,6 +54,9 @@ public class PathProcessorCreator implements ParamValueProcessorCreator {
       if (value == null) {
         return null;
       }
+      if (value.contains(":")) {
+        return convertValue(URLDecoder.decode(value, "UTF-8"), targetType);
+      }
       return convertValue(HttpUtils.uriDecodePath(value), targetType);
     }
 
diff --git a/common/common-rest/src/test/java/org/apache/servicecomb/common/rest/codec/param/TestPathProcessor.java b/common/common-rest/src/test/java/org/apache/servicecomb/common/rest/codec/param/TestPathProcessor.java
index 19cca94..443a04a 100644
--- a/common/common-rest/src/test/java/org/apache/servicecomb/common/rest/codec/param/TestPathProcessor.java
+++ b/common/common-rest/src/test/java/org/apache/servicecomb/common/rest/codec/param/TestPathProcessor.java
@@ -101,6 +101,13 @@ public class TestPathProcessor {
   }
 
   @Test
+  public void testGetColon() throws Exception {
+    prepareGetValue("name", String.class);
+    pathVars.put("name", "aa:bb");
+    Assert.assertEquals("aa:bb", processor.getValue(request));
+  }
+
+  @Test
   public void testGetProcessorType() {
     createProcessor("name", String.class);
     Assert.assertEquals("path", processor.getProcessorType());


[servicecomb-java-chassis] 03/04: test IT

Posted by li...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git

commit d019b7cc30a393b67da919348f90d9c48d14e6b3
Author: GuoYL <gy...@gmail.com>
AuthorDate: Wed Feb 12 16:33:13 2020 +0800

    test IT
---
 .../java/org/apache/servicecomb/foundation/common/http/HttpUtils.java    | 1 -
 1 file changed, 1 deletion(-)

diff --git a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java
index 76eec82..9200b5e 100644
--- a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java
+++ b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java
@@ -35,7 +35,6 @@ public final class HttpUtils {
    * @param headerValue example: attachment;filename=a.txt
    *
    */
-  // 
   public static String parseParamFromHeaderValue(String headerValue, String paramName) {
     if (StringUtils.isEmpty(headerValue)) {
       return null;


[servicecomb-java-chassis] 04/04: use spring way

Posted by li...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git

commit bdeb9237f7da133fc4c6ed8806b6c5b53fdc3e0d
Author: GuoYL <gy...@gmail.com>
AuthorDate: Wed Feb 12 18:39:56 2020 +0800

    use spring way
---
 .../common/rest/codec/param/PathProcessorCreator.java         | 10 +++++-----
 .../apache/servicecomb/foundation/common/http/HttpUtils.java  | 11 -----------
 2 files changed, 5 insertions(+), 16 deletions(-)

diff --git a/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java b/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java
index 75fc317..cffb1f4 100644
--- a/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java
+++ b/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java
@@ -17,22 +17,22 @@
 
 package org.apache.servicecomb.common.rest.codec.param;
 
-import java.io.UnsupportedEncodingException;
 import java.lang.reflect.Type;
-import java.net.URLDecoder;
+import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
 
 import org.apache.servicecomb.common.rest.RestConst;
 import org.apache.servicecomb.common.rest.codec.RestClientRequest;
-import org.apache.servicecomb.foundation.common.http.HttpUtils;
 
 import com.fasterxml.jackson.databind.JavaType;
 import com.fasterxml.jackson.databind.type.TypeFactory;
 
 import io.swagger.models.parameters.Parameter;
 import io.swagger.models.parameters.PathParameter;
+import org.springframework.util.StringUtils;
 
 public class PathProcessorCreator implements ParamValueProcessorCreator {
   public static final String PARAMTYPE = "path";
@@ -43,7 +43,7 @@ public class PathProcessorCreator implements ParamValueProcessorCreator {
     }
 
     @Override
-    public Object getValue(HttpServletRequest request) throws Exception {
+    public Object getValue(HttpServletRequest request) {
       @SuppressWarnings("unchecked")
       Map<String, String> pathVarMap = (Map<String, String>) request.getAttribute(RestConst.PATH_PARAMETERS);
       if (pathVarMap == null) {
@@ -54,7 +54,7 @@ public class PathProcessorCreator implements ParamValueProcessorCreator {
       if (value == null) {
         return null;
       }
-      return convertValue(HttpUtils.decodePathParam(value), targetType);
+      return convertValue(StringUtils.uriDecode(value, StandardCharsets.UTF_8), targetType);
     }
 
     @Override
diff --git a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java
index 9200b5e..2e32bc1 100644
--- a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java
+++ b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java
@@ -17,11 +17,8 @@
 package org.apache.servicecomb.foundation.common.http;
 
 import java.io.File;
-import java.io.UnsupportedEncodingException;
 import java.net.URI;
 import java.net.URISyntaxException;
-
-import java.net.URLDecoder;
 import org.springframework.util.StringUtils;
 
 import com.google.common.net.UrlEscapers;
@@ -95,14 +92,6 @@ public final class HttpUtils {
     return UrlEscapers.urlPathSegmentEscaper().escape(pathParam);
   }
 
-  public static String decodePathParam(String pathParam) throws UnsupportedEncodingException {
-    String res = uriDecodePath(pathParam);
-    if (StringUtils.isEmpty(res)) {
-      return URLDecoder.decode(pathParam, "UTF-8");
-    }
-    return res;
-  }
-
   public static String uriDecodePath(String path) {
     if (path == null) {
       return null;


[servicecomb-java-chassis] 02/04: [SCB-1748] modify as comment

Posted by li...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

liubao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-java-chassis.git

commit e03a0e4099531a826826c58400381ef4ebb60128
Author: GuoYL <gy...@gmail.com>
AuthorDate: Mon Feb 10 10:24:02 2020 +0800

    [SCB-1748] modify as comment
---
 .../common/rest/codec/param/PathProcessorCreator.java          |  7 ++-----
 .../apache/servicecomb/foundation/common/http/HttpUtils.java   | 10 ++++++++++
 2 files changed, 12 insertions(+), 5 deletions(-)

diff --git a/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java b/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java
index 896e870..75fc317 100644
--- a/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java
+++ b/common/common-rest/src/main/java/org/apache/servicecomb/common/rest/codec/param/PathProcessorCreator.java
@@ -43,7 +43,7 @@ public class PathProcessorCreator implements ParamValueProcessorCreator {
     }
 
     @Override
-    public Object getValue(HttpServletRequest request) throws UnsupportedEncodingException {
+    public Object getValue(HttpServletRequest request) throws Exception {
       @SuppressWarnings("unchecked")
       Map<String, String> pathVarMap = (Map<String, String>) request.getAttribute(RestConst.PATH_PARAMETERS);
       if (pathVarMap == null) {
@@ -54,10 +54,7 @@ public class PathProcessorCreator implements ParamValueProcessorCreator {
       if (value == null) {
         return null;
       }
-      if (value.contains(":")) {
-        return convertValue(URLDecoder.decode(value, "UTF-8"), targetType);
-      }
-      return convertValue(HttpUtils.uriDecodePath(value), targetType);
+      return convertValue(HttpUtils.decodePathParam(value), targetType);
     }
 
     @Override
diff --git a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java
index 0c77d19..76eec82 100644
--- a/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java
+++ b/foundations/foundation-common/src/main/java/org/apache/servicecomb/foundation/common/http/HttpUtils.java
@@ -17,9 +17,11 @@
 package org.apache.servicecomb.foundation.common.http;
 
 import java.io.File;
+import java.io.UnsupportedEncodingException;
 import java.net.URI;
 import java.net.URISyntaxException;
 
+import java.net.URLDecoder;
 import org.springframework.util.StringUtils;
 
 import com.google.common.net.UrlEscapers;
@@ -94,6 +96,14 @@ public final class HttpUtils {
     return UrlEscapers.urlPathSegmentEscaper().escape(pathParam);
   }
 
+  public static String decodePathParam(String pathParam) throws UnsupportedEncodingException {
+    String res = uriDecodePath(pathParam);
+    if (StringUtils.isEmpty(res)) {
+      return URLDecoder.decode(pathParam, "UTF-8");
+    }
+    return res;
+  }
+
   public static String uriDecodePath(String path) {
     if (path == null) {
       return null;