From 892af68c0f1852f4821a4d93bc36b4f858e71363 Mon Sep 17 00:00:00 2001
From: liuxiaolong <736321739@qq.com>
Date: 星期四, 08 八月 2019 17:11:31 +0800
Subject: [PATCH] members search return map[string]NodeInfo
---
searcher.go | 14 +++++++++-----
1 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/searcher.go b/searcher.go
index d1736e6..083e8fa 100644
--- a/searcher.go
+++ b/searcher.go
@@ -9,7 +9,7 @@
)
var (
- members [][]byte
+ members = make(map[string]NodeInfo,0)
delay time.Duration
)
@@ -53,8 +53,12 @@
// NotifyMsg is called when a user-data message is received
func (d *delegate) NotifyMsg(b []byte) {
// logMsg(b)
- fmt.Println(b)
- members = append(members, b)
+ n := NodeInfo{}
+ if err:= json.Unmarshal(b, &n);err !=nil {
+ members[n.NodeID] = n
+ } else {
+ fmt.Println("NotifyMsg msg unmarshal err")
+ }
}
func logMsg(b []byte) {
@@ -91,7 +95,7 @@
return memberlist.Create(conf)
}
-func CreateSearchNodeWhitClose(key string, delay time.Duration) [][]byte {
+func CreateSearchNodeWhitClose(key string, delay time.Duration) map[string]NodeInfo {
m, err := CreateSearchNode(key)
if err == nil {
// fmt.Printf("Local member %s:%d\n", m.LocalNode().Addr, m.LocalNode().Port)
@@ -106,6 +110,6 @@
return m.Shutdown()
}
-func GetSearchNodes() [][]byte {
+func GetSearchNodes() map[string]NodeInfo {
return members
}
--
Gitblit v1.8.0