move etcdMux to etcd_handlers.go (better proximity code)

release-0.4
Fabrizio (Misto) Milo 2013-08-13 11:48:39 -07:00
parent 0aebf3757d
commit 82fe001c65
2 changed files with 19 additions and 15 deletions

21
etcd.go
View File

@ -265,23 +265,14 @@ func startEtcdTransport(info Info, scheme string, tlsConf tls.Config) {
} }
infof("etcd server [%s:%s]", info.Name, u) infof("etcd server [%s:%s]", info.Name, u)
etcdMux := http.NewServeMux() server := &Etcd{
Server: http.Server{
server := &http.Server{ Handler: NewEtcdMuxer(),
Handler: etcdMux, TLSConfig: &tlsConf,
TLSConfig: &tlsConf, Addr: u.Host,
Addr: u.Host, },
} }
// external commands
etcdMux.HandleFunc("/"+version+"/keys/", Multiplexer)
etcdMux.HandleFunc("/"+version+"/watch/", WatchHttpHandler)
etcdMux.HandleFunc("/leader", LeaderHttpHandler)
etcdMux.HandleFunc("/machines", MachinesHttpHandler)
etcdMux.HandleFunc("/", VersionHttpHandler)
etcdMux.HandleFunc("/stats", StatsHttpHandler)
etcdMux.HandleFunc("/test/", TestHttpHandler)
if scheme == "http" { if scheme == "http" {
fatal(server.ListenAndServe()) fatal(server.ListenAndServe())
} else { } else {

View File

@ -12,6 +12,19 @@ import (
// Handlers to handle etcd-store related request via etcd url // Handlers to handle etcd-store related request via etcd url
//------------------------------------------------------------------- //-------------------------------------------------------------------
func NewEtcdMuxer() *http.ServeMux {
// external commands
etcdMux := http.NewServeMux()
etcdMux.HandleFunc("/"+version+"/keys/", Multiplexer)
etcdMux.HandleFunc("/"+version+"/watch/", WatchHttpHandler)
etcdMux.HandleFunc("/leader", LeaderHttpHandler)
etcdMux.HandleFunc("/machines", MachinesHttpHandler)
etcdMux.HandleFunc("/", VersionHttpHandler)
etcdMux.HandleFunc("/stats", StatsHttpHandler)
etcdMux.HandleFunc("/test/", TestHttpHandler)
return etcdMux
}
// Multiplex GET/POST/DELETE request to corresponding handlers // Multiplex GET/POST/DELETE request to corresponding handlers
func Multiplexer(w http.ResponseWriter, req *http.Request) { func Multiplexer(w http.ResponseWriter, req *http.Request) {