You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dubbo.apache.org by li...@apache.org on 2020/11/12 05:20:00 UTC

[dubbo] branch 3.0 updated: reformat instance url toString

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

liujun pushed a commit to branch 3.0
in repository https://gitbox.apache.org/repos/asf/dubbo.git


The following commit(s) were added to refs/heads/3.0 by this push:
     new 7054f62  reformat instance url toString
7054f62 is described below

commit 7054f62fafc9f2f5bdf92fcbdfe0fe1188debc62
Author: ken.lj <ke...@gmail.com>
AuthorDate: Thu Nov 12 13:19:34 2020 +0800

    reformat instance url toString
---
 .../java/org/apache/dubbo/metadata/MetadataInfo.java  | 12 ++++++++++++
 .../dubbo/registry/client/InstanceAddressURL.java     | 19 ++++++++++---------
 2 files changed, 22 insertions(+), 9 deletions(-)

diff --git a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/MetadataInfo.java b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/MetadataInfo.java
index e354784..1564f36 100644
--- a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/MetadataInfo.java
+++ b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/MetadataInfo.java
@@ -161,6 +161,18 @@ public class MetadataInfo implements Serializable {
         return serviceInfo.getAllParams();
     }
 
+    public String getServiceString(String protocolServiceKey) {
+        if (protocolServiceKey == null) {
+            return null;
+        }
+
+        ServiceInfo serviceInfo = services.get(protocolServiceKey);
+        if (serviceInfo == null) {
+            return null;
+        }
+        return serviceInfo.toString();
+    }
+
     @Override
     public String toString() {
         return "metadata{" +
diff --git a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/InstanceAddressURL.java b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/InstanceAddressURL.java
index 494785d..51c9ffa 100644
--- a/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/InstanceAddressURL.java
+++ b/dubbo-registry/dubbo-registry-api/src/main/java/org/apache/dubbo/registry/client/InstanceAddressURL.java
@@ -95,6 +95,9 @@ public class InstanceAddressURL extends URL {
     @Override
     public String getPath() {
         MetadataInfo.ServiceInfo serviceInfo = metadataInfo.getServiceInfo(getProtocolServiceKey());
+        if (serviceInfo == null) {
+            return getServiceInterface();
+        }
         return serviceInfo.getPath();
     }
 
@@ -358,14 +361,6 @@ public class InstanceAddressURL extends URL {
         return getInstance().hashCode();
     }
 
-    public String getServiceString(String service) {
-        MetadataInfo.ServiceInfo serviceInfo = metadataInfo.getServiceInfo(service);
-        if (serviceInfo == null) {
-            return instance.toString();
-        }
-        return instance.toString() + serviceInfo.toString();
-    }
-
     @Override
     public String toString() {
         if (instance == null) {
@@ -374,6 +369,12 @@ public class InstanceAddressURL extends URL {
         if (metadataInfo == null) {
             return instance.toString();
         }
-        return instance.toString() + metadataInfo.toString();
+
+        String protocolServiceKey = RpcContext.getContext().getProtocolServiceKey();
+        if (StringUtils.isNotEmpty(protocolServiceKey)) {
+            return instance.toString() + ", " + metadataInfo.getServiceString(protocolServiceKey);
+        }
+
+        return instance.toString();
     }
 }