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

mercyblitz pushed a commit to branch 2.6.x
in repository https://gitbox.apache.org/repos/asf/incubator-dubbo.git


The following commit(s) were added to refs/heads/2.6.x by this push:
     new 10309b3  fix for #4111 (#4114)
10309b3 is described below

commit 10309b36d309bc4a67cf03c46eab57e8857835a8
Author: uglycow <[email protected]>
AuthorDate: Wed May 22 16:48:27 2019 +0800

    fix for #4111 (#4114)
    
    do not ignore empty value when we construct servicename
---
 .../registry/support/ServiceInstanceRegistry.java     | 19 ++++++++-----------
 1 file changed, 8 insertions(+), 11 deletions(-)

diff --git 
a/dubbo-registry/dubbo-registry-api/src/main/java/com/alibaba/dubbo/registry/support/ServiceInstanceRegistry.java
 
b/dubbo-registry/dubbo-registry-api/src/main/java/com/alibaba/dubbo/registry/support/ServiceInstanceRegistry.java
index d6b1d87..dd19604 100644
--- 
a/dubbo-registry/dubbo-registry-api/src/main/java/com/alibaba/dubbo/registry/support/ServiceInstanceRegistry.java
+++ 
b/dubbo-registry/dubbo-registry-api/src/main/java/com/alibaba/dubbo/registry/support/ServiceInstanceRegistry.java
@@ -430,16 +430,19 @@ public abstract class ServiceInstanceRegistry<S> extends 
FailbackRegistry {
 
     private static String getServiceName(URL url, String category) {
         StringBuilder serviceNameBuilder = new StringBuilder(category);
-        appendIfPresent(serviceNameBuilder, url, Constants.INTERFACE_KEY);
-        appendIfPresent(serviceNameBuilder, url, Constants.VERSION_KEY);
-        appendIfPresent(serviceNameBuilder, url, Constants.GROUP_KEY);
+        append(serviceNameBuilder, url, Constants.INTERFACE_KEY);
+        append(serviceNameBuilder, url, Constants.VERSION_KEY);
+        append(serviceNameBuilder, url, Constants.GROUP_KEY);
         return serviceNameBuilder.toString();
     }
 
-    private static void appendIfPresent(StringBuilder target, URL url,
+    private static void append(StringBuilder target, URL url,
                                         String parameterName) {
+        target.append(SERVICE_NAME_SEPARATOR);
         String parameterValue = url.getParameter(parameterName);
-        appendIfPresent(target, parameterValue);
+        if (StringUtils.isNotEmpty(parameterValue)) {
+            target.append(parameterValue);
+        }
     }
 
     public static String[] getServiceSegments(String serviceName) {
@@ -465,10 +468,4 @@ public abstract class ServiceInstanceRegistry<S> extends 
FailbackRegistry {
     private static <T> T[] of(T... values) {
         return values;
     }
-
-    private static void appendIfPresent(StringBuilder target, String 
parameterValue) {
-        if (StringUtils.isNotEmpty(parameterValue)) {
-            target.append(SERVICE_NAME_SEPARATOR).append(parameterValue);
-        }
-    }
 }

Reply via email to