From 00b8ac80b4f5689fdfe1fb39a0f2558735bfa39b Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期五, 18 十二月 2020 14:44:37 +0800
Subject: [PATCH] fix url

---
 cluster.go |   34 +++++++++++++++++++++++++++-------
 1 files changed, 27 insertions(+), 7 deletions(-)

diff --git a/cluster.go b/cluster.go
index f3992ce..b01a79c 100644
--- a/cluster.go
+++ b/cluster.go
@@ -1,6 +1,7 @@
 package dbapi
 
 import (
+	"basic.com/pubsub/protomsg.git"
 	"encoding/json"
 	"strconv"
 )
@@ -23,20 +24,21 @@
 	return "http://"+api.Ip+":"+strconv.Itoa(api.Port)
 }
 
-func (api ClusterApi) FindCluster() (bool,interface{}) {
+func (api ClusterApi) FindCluster() (b bool,c protomsg.ClusterAndNodes) {
 	url := api.getBasicUrl() + DATA_URL_PREFIX + "/cluster/findCluster"
 	client := NewClient()
 	body,err := client.DoGetRequest(url, nil,nil)
 	if err != nil {
-		return false,nil
+		return false,c
 	}
 
 	var res Result
 	if err = json.Unmarshal(body, &res); err != nil {
-		return false,nil
+		return false,c
 	}
-
-	return res.Success,res.Data
+	bytes, _ := json.Marshal(res.Data)
+	err = json.Unmarshal(bytes, &c)
+	return res.Success,c
 }
 
 func (api ClusterApi) Create(clusterName string, password string, virtualIp string) (bool,interface{}) {
@@ -135,10 +137,10 @@
 	return res.Success,res.Data
 }
 
-func (api ClusterApi) Leave() (bool,interface{}) {
+func (api ClusterApi) Leave(paramBody map[string]interface{}) (bool,interface{}) {
 	url := api.getBasicUrl() + DATA_URL_PREFIX + "/cluster/leave"
 	client := NewClient()
-	body,err := client.DoPostRequest(url,CONTENT_TYPE_FORM, nil,nil,nil)
+	body,err := client.DoPostRequest(url,CONTENT_TYPE_FORM, paramBody,nil,nil)
 	if err != nil {
 		return false,nil
 	}
@@ -169,4 +171,22 @@
 }
 
 
+func (api ClusterApi) UpdateDriftState(driftState string, nodeId string) (bool,interface{}) {
+	url := api.getBasicUrl() + DATA_URL_PREFIX + "/cluster/updateDriftState"
+	client := NewClient()
+	paramBody := map[string]interface{}{
+		"driftState": driftState,
+		"nodeId": nodeId,
+	}
+	body,err := client.DoPostRequest(url,CONTENT_TYPE_FORM, paramBody,nil,nil)
+	if err != nil {
+		return false,nil
+	}
 
+	var res Result
+	if err = json.Unmarshal(body, &res); err != nil {
+		return false,nil
+	}
+
+	return res.Success,res.Data
+}

--
Gitblit v1.8.0