diff --git a/config/reference_config.go b/config/reference_config.go index c1565004c0bf12b5546f703f6b6529c438afd4fa..99d442ad4629db3fa6240c50c43bdefd7f49ac64 100644 --- a/config/reference_config.go +++ b/config/reference_config.go @@ -55,6 +55,7 @@ type ReferenceConfig struct { Params map[string]string `yaml:"params" json:"params,omitempty" property:"params"` invoker protocol.Invoker urls []*common.URL + Generic bool } func (c *ReferenceConfig) Prefix() string { @@ -170,7 +171,10 @@ func (refconfig *ReferenceConfig) getUrlMap() url.Values { //filter urlMap.Set(constant.REFERENCE_FILTER_KEY, mergeValue(consumerConfig.Filter, refconfig.Filter, constant.DEFAULT_REFERENCE_FILTERS)) - urlMap.Set(constant.REFERENCE_FILTER_KEY, mergeValue(consumerConfig.Filter, refconfig.Filter, constant.GENERIC_REFERENCE_FILTERS)) + if refconfig.Generic { + urlMap.Set(constant.REFERENCE_FILTER_KEY, mergeValue(consumerConfig.Filter, refconfig.Filter, constant.GENERIC_REFERENCE_FILTERS)) + } + for _, v := range refconfig.Methods { urlMap.Set("methods."+v.Name+"."+constant.LOADBALANCE_KEY, v.Loadbalance) urlMap.Set("methods."+v.Name+"."+constant.RETRIES_KEY, strconv.FormatInt(v.Retries, 10)) diff --git a/examples/general/dubbo/go-client/app/client.go b/examples/general/dubbo/go-client/app/client.go index b79874b2bd1728cfb319c5e90b973e8867c0048e..62113e2d3120d901044d4143f2e52b9c8d36c60a 100644 --- a/examples/general/dubbo/go-client/app/client.go +++ b/examples/general/dubbo/go-client/app/client.go @@ -295,6 +295,7 @@ func test3() { Cluster: "failover", Registry: "hangzhouzk", Protocol: dubbo.DUBBO, + Generic: true, } referenceConfig.Load(appName) //appName is the unique identification of RPCService diff --git a/filter/impl/generic_filter_test.go b/filter/impl/generic_filter_test.go index b039fbd89e0bd382b4dd990b744bc7b9feee1804..bdeb9532974297c092aef8dea9d745956f93ecb0 100644 --- a/filter/impl/generic_filter_test.go +++ b/filter/impl/generic_filter_test.go @@ -19,9 +19,9 @@ package impl import ( "github.com/stretchr/testify/assert" - "reflect" ) import ( + "reflect" "testing" ) diff --git a/registry/directory/directory.go b/registry/directory/directory.go index 11687f82ee5fe0dba6f2bca38b6454ee9c666d91..6a5a194391d8b2d56b22b67e395703285fbf28b8 100644 --- a/registry/directory/directory.go +++ b/registry/directory/directory.go @@ -116,7 +116,7 @@ func (dir *registryDirectory) Subscribe(url common.URL) { } //subscribe service from registry , and update the cacheServices -func (dir *registryDirectory) update(res *registry.ServiceEvent) { +func (dir *registryDirectory) /**/ update(res *registry.ServiceEvent) { if res == nil { return }