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/07/23 09:09:35 UTC

[dubbo] branch 3.0 updated: refactor param filter to support both service and instance customization

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 a27494f  refactor param filter to support both service and instance customization
a27494f is described below

commit a27494f9b2d4051b95fb3755e48d6cfb7f704458
Author: ken.lj <ke...@gmail.com>
AuthorDate: Thu Jul 23 17:08:42 2020 +0800

    refactor param filter to support both service and instance customization
---
 .../dubbo/metadata/DefaultMetadataParamsFilter.java       |  8 +++++++-
 .../main/java/org/apache/dubbo/metadata/MetadataInfo.java |  2 +-
 .../org/apache/dubbo/metadata/MetadataParamsFilter.java   | 15 ++++++++++++++-
 3 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/DefaultMetadataParamsFilter.java b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/DefaultMetadataParamsFilter.java
index 7a11096..667c7cd 100644
--- a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/DefaultMetadataParamsFilter.java
+++ b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/DefaultMetadataParamsFilter.java
@@ -39,11 +39,17 @@ import static org.apache.dubbo.rpc.cluster.Constants.WEIGHT_KEY;
 @Activate
 public class DefaultMetadataParamsFilter implements MetadataParamsFilter {
     @Override
-    public String[] include() {
+    public String[] serviceParamsIncluded() {
         return new String[]{
                 CODEC_KEY, EXCHANGER_KEY, SERIALIZATION_KEY, CLUSTER_KEY, CONNECTIONS_KEY, DEPRECATED_KEY,
                 GROUP_KEY, LOADBALANCE_KEY, MOCK_KEY, PATH_KEY, TIMEOUT_KEY, TOKEN_KEY, VERSION_KEY, WARMUP_KEY,
                 WEIGHT_KEY, DUBBO_VERSION_KEY, RELEASE_KEY
         };
     }
+
+
+    @Override
+    public String[] instanceParamsIncluded() {
+        return new String[0];
+    }
 }
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 f479830..315e56e 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
@@ -191,7 +191,7 @@ public class MetadataInfo implements Serializable {
             Map<String, String> params = new HashMap<>();
             List<MetadataParamsFilter> filters = loader.getActivateExtension(url, "params-filter");
             for (MetadataParamsFilter filter : filters) {
-                String[] paramsIncluded = filter.include();
+                String[] paramsIncluded = filter.serviceParamsIncluded();
                 if (ArrayUtils.isNotEmpty(paramsIncluded)) {
                     for (String p : paramsIncluded) {
                         String value = url.getParameter(p);
diff --git a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/MetadataParamsFilter.java b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/MetadataParamsFilter.java
index 5ccb9aa..542acb1 100644
--- a/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/MetadataParamsFilter.java
+++ b/dubbo-metadata/dubbo-metadata-api/src/main/java/org/apache/dubbo/metadata/MetadataParamsFilter.java
@@ -20,5 +20,18 @@ import org.apache.dubbo.common.extension.SPI;
 
 @SPI
 public interface MetadataParamsFilter {
-   String[] include();
+
+   /**
+    * params that need to be sent to metadata center
+    *
+    * @return arrays of keys
+    */
+   String[] serviceParamsIncluded();
+
+   /**
+    * params that need to be sent to registry center
+    *
+    * @return arrays of keys
+    */
+   String[] instanceParamsIncluded();
 }