From cf524d40bc7ff6b0560476d0a04c26aa6e6b054a Mon Sep 17 00:00:00 2001
From: pantianying <601666418@qq.com>
Date: Mon, 23 Sep 2019 11:40:54 +0800
Subject: [PATCH] add add deal res.Action in refreshInvokers

---
 registry/directory/directory.go | 25 +++++++++++++------------
 1 file changed, 13 insertions(+), 12 deletions(-)

diff --git a/registry/directory/directory.go b/registry/directory/directory.go
index 54f0acd84..bc8b2f78c 100644
--- a/registry/directory/directory.go
+++ b/registry/directory/directory.go
@@ -38,6 +38,7 @@ import (
 	"github.com/apache/dubbo-go/protocol"
 	"github.com/apache/dubbo-go/protocol/protocolwrapper"
 	"github.com/apache/dubbo-go/registry"
+	"github.com/apache/dubbo-go/remoting"
 )
 
 const (
@@ -124,18 +125,18 @@ func (dir *registryDirectory) refreshInvokers(res *registry.ServiceEvent) {
 			//TODO: router
 		}
 	}
-	//
-	//switch res.Action {
-	//case remoting.EventTypeAdd:
-	//	//dir.cacheService.EventTypeAdd(res.Path, dir.serviceTTL)
-	//	dir.cacheInvoker(&res.Service)
-	//case remoting.EventTypeDel:
-	//	//dir.cacheService.EventTypeDel(res.Path, dir.serviceTTL)
-	//	dir.uncacheInvoker(&res.Service)
-	//	logger.Infof("selector delete service url{%s}", res.Service)
-	//default:
-	//	return
-	//}
+
+	switch res.Action {
+	case remoting.EventTypeAdd, remoting.EventTypeUpdate:
+		//dir.cacheService.EventTypeAdd(res.Path, dir.serviceTTL)
+		dir.cacheInvoker(&res.Service)
+	case remoting.EventTypeDel:
+		//dir.cacheService.EventTypeDel(res.Path, dir.serviceTTL)
+		dir.uncacheInvoker(&res.Service)
+		logger.Infof("selector delete service url{%s}", res.Service)
+	default:
+		return
+	}
 	dir.cacheInvoker(url)
 	newInvokers := dir.toGroupInvokers()
 	dir.listenerLock.Lock()
-- 
GitLab