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

alexstocks pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/dubbo-go-pixiu.git


The following commit(s) were added to refs/heads/develop by this push:
     new b562502d fix dubbogoproxy config (#510)
b562502d is described below

commit b562502d5c74dfbd400e5bdb44930ac2eb9ea09f
Author: nicktming <[email protected]>
AuthorDate: Sun Oct 30 13:32:16 2022 +0800

    fix dubbogoproxy config (#510)
---
 pixiu/pkg/client/dubbo/dubbo.go      | 28 +++++++++++++++-------------
 pixiu/pkg/client/dubbo/dubbo_test.go |  6 ++++++
 2 files changed, 21 insertions(+), 13 deletions(-)

diff --git a/pixiu/pkg/client/dubbo/dubbo.go b/pixiu/pkg/client/dubbo/dubbo.go
index be8a4d2e..fb34ebb2 100644
--- a/pixiu/pkg/client/dubbo/dubbo.go
+++ b/pixiu/pkg/client/dubbo/dubbo.go
@@ -132,20 +132,22 @@ func (dc *Client) SetConfig(dpc *DubboProxyConfig) {
 func (dc *Client) Apply() error {
 
        rootConfigBuilder := dg.NewRootConfigBuilder()
-       for k, v := range dc.dubboProxyConfig.Registries {
-               if len(v.Protocol) == 0 {
-                       logger.Warnf("can not find registry protocol config, 
use default type 'zookeeper'")
-                       v.Protocol = defaultDubboProtocol
+       if dc.dubboProxyConfig != nil && dc.dubboProxyConfig.Registries != nil {
+               for k, v := range dc.dubboProxyConfig.Registries {
+                       if len(v.Protocol) == 0 {
+                               logger.Warnf("can not find registry protocol 
config, use default type 'zookeeper'")
+                               v.Protocol = defaultDubboProtocol
+                       }
+                       rootConfigBuilder.AddRegistry(k, &dg.RegistryConfig{
+                               Protocol:  v.Protocol,
+                               Address:   v.Address,
+                               Timeout:   v.Timeout,
+                               Username:  v.Username,
+                               Password:  v.Password,
+                               Namespace: v.Namespace,
+                               Group:     v.Group,
+                       })
                }
-               rootConfigBuilder.AddRegistry(k, &dg.RegistryConfig{
-                       Protocol:  v.Protocol,
-                       Address:   v.Address,
-                       Timeout:   v.Timeout,
-                       Username:  v.Username,
-                       Password:  v.Password,
-                       Namespace: v.Namespace,
-                       Group:     v.Group,
-               })
        }
        rootConfigBuilder.SetApplication(defaultApplication)
        rootConfig := rootConfigBuilder.Build()
diff --git a/pixiu/pkg/client/dubbo/dubbo_test.go 
b/pixiu/pkg/client/dubbo/dubbo_test.go
index 5607abb7..73d5d1e1 100644
--- a/pixiu/pkg/client/dubbo/dubbo_test.go
+++ b/pixiu/pkg/client/dubbo/dubbo_test.go
@@ -239,3 +239,9 @@ func TestBuildOption(t *testing.T) {
        _, ok := option.(*interfaceOpt)
        assert.True(t, ok)
 }
+
+func TestApply(t *testing.T) {
+       dClient := NewDubboClient()
+       err := dClient.Apply()
+       assert.Nil(t, err)
+}

Reply via email to