Xiang Li 12 vuotta sitten
vanhempi
commit
b71811375b
2 muutettua tiedostoa jossa 9 lisäystä ja 17 poistoa
  1. 5 14
      etcd.go
  2. 4 3
      etcd_handlers.go

+ 5 - 14
etcd.go

@@ -250,13 +250,6 @@ func dialTimeout(network, addr string) (net.Conn, error) {
 	return net.DialTimeout(network, addr, HTTPTimeout)
 }
 
-type Etcd struct {
-	http.Server
-	url    string
-	scheme string
-	tls    TLSConfig
-}
-
 // Start to listen and response client command
 func startEtcdTransport(info Info, scheme string, tlsConf tls.Config) {
 	u, err := url.Parse(info.EtcdURL)
@@ -265,13 +258,11 @@ func startEtcdTransport(info Info, scheme string, tlsConf tls.Config) {
 	}
 	infof("etcd server [%s:%s]", info.Name, u)
 
-	server := &Etcd{
-		Server: http.Server{
-			Handler:   NewEtcdMuxer(),
-			TLSConfig: &tlsConf,
-			Addr:      u.Host,
-		},
-	}
+	server := http.Server{
+				Handler:   NewEtcdMuxer(),
+				TLSConfig: &tlsConf,
+				Addr:      u.Host,
+			}
 
 	if scheme == "http" {
 		fatal(server.ListenAndServe())

+ 4 - 3
etcd_handlers.go

@@ -165,8 +165,9 @@ func dispatch(c Command, w *http.ResponseWriter, req *http.Request, etcd bool) {
 			return
 		}
 	} else {
+		leader := raftServer.Leader() 
 		// current no leader
-		if raftServer.Leader() == "" {
+		if leader == "" {
 			(*w).WriteHeader(http.StatusInternalServerError)
 			(*w).Write(newJsonError(300, ""))
 			return
@@ -179,10 +180,10 @@ func dispatch(c Command, w *http.ResponseWriter, req *http.Request, etcd bool) {
 		var url string
 
 		if etcd {
-			etcdAddr, _ := nameToEtcdURL(raftServer.Leader())
+			etcdAddr, _ := nameToEtcdURL(leader)
 			url = etcdAddr + path
 		} else {
-			raftAddr, _ := nameToRaftURL(raftServer.Leader())
+			raftAddr, _ := nameToRaftURL(leader)
 			url = raftAddr + path
 		}