// registerRoutes registers HTTP route handlers func (d *daemon) registerRoutes(router *mux.Router) { // Add REST routes s := router.Headers("Content-Type", "application/json").Methods("Post").Subrouter() s.HandleFunc("/plugin/allocAddress", makeHTTPHandler(master.AllocAddressHandler)) s.HandleFunc("/plugin/releaseAddress", makeHTTPHandler(master.ReleaseAddressHandler)) s.HandleFunc("/plugin/createEndpoint", makeHTTPHandler(master.CreateEndpointHandler)) s.HandleFunc("/plugin/deleteEndpoint", makeHTTPHandler(master.DeleteEndpointHandler)) s.HandleFunc("/plugin/svcProviderUpdate", makeHTTPHandler(master.ServiceProviderUpdateHandler)) s = router.Methods("Get").Subrouter() s.HandleFunc(fmt.Sprintf("/%s/%s", master.GetEndpointRESTEndpoint, "{id}"), get(false, d.endpoints)) s.HandleFunc(fmt.Sprintf("/%s", master.GetEndpointsRESTEndpoint), get(true, d.endpoints)) s.HandleFunc(fmt.Sprintf("/%s/%s", master.GetNetworkRESTEndpoint, "{id}"), get(false, d.networks)) s.HandleFunc(fmt.Sprintf("/%s", master.GetNetworksRESTEndpoint), get(true, d.networks)) s.HandleFunc(fmt.Sprintf("/%s", master.GetVersionRESTEndpoint), getVersion) s.HandleFunc(fmt.Sprintf("/%s/%s", master.GetServiceRESTEndpoint, "{id}"), get(false, d.services)) s.HandleFunc(fmt.Sprintf("/%s", master.GetServicesRESTEndpoint), get(true, d.services)) }
// registerRoutes registers HTTP route handlers func (d *daemon) registerRoutes(router *mux.Router) { // register web ui handlers d.registerWebuiHandler(router) // Add REST routes s := router.Headers("Content-Type", "application/json").Methods("Post").Subrouter() s.HandleFunc("/plugin/allocAddress", makeHTTPHandler(master.AllocAddressHandler)) s.HandleFunc("/plugin/releaseAddress", makeHTTPHandler(master.ReleaseAddressHandler)) s.HandleFunc("/plugin/createEndpoint", makeHTTPHandler(master.CreateEndpointHandler)) s.HandleFunc("/plugin/deleteEndpoint", makeHTTPHandler(master.DeleteEndpointHandler)) s = router.Methods("Get").Subrouter() s.HandleFunc(fmt.Sprintf("/%s/%s", master.GetEndpointRESTEndpoint, "{id}"), get(false, d.endpoints)) s.HandleFunc(fmt.Sprintf("/%s", master.GetEndpointsRESTEndpoint), get(true, d.endpoints)) s.HandleFunc(fmt.Sprintf("/%s/%s", master.GetNetworkRESTEndpoint, "{id}"), get(false, d.networks)) s.HandleFunc(fmt.Sprintf("/%s", master.GetNetworksRESTEndpoint), get(true, d.networks)) s.HandleFunc(fmt.Sprintf("/%s", master.GetVersionRESTEndpoint), getVersion) // See if we need to create the default tenant go objApi.CreateDefaultTenant() }
// registerRoutes registers HTTP route handlers func (d *MasterDaemon) registerRoutes(router *mux.Router) { // Add REST routes s := router.Headers("Content-Type", "application/json").Methods("Post").Subrouter() s.HandleFunc("/plugin/allocAddress", makeHTTPHandler(master.AllocAddressHandler)) s.HandleFunc("/plugin/releaseAddress", makeHTTPHandler(master.ReleaseAddressHandler)) s.HandleFunc("/plugin/createEndpoint", makeHTTPHandler(master.CreateEndpointHandler)) s.HandleFunc("/plugin/deleteEndpoint", makeHTTPHandler(master.DeleteEndpointHandler)) s.HandleFunc("/plugin/updateEndpoint", makeHTTPHandler(master.UpdateEndpointHandler)) s = router.Methods("Get").Subrouter() // return netmaster version s.HandleFunc(fmt.Sprintf("/%s", master.GetVersionRESTEndpoint), getVersion) // Print info about the cluster s.HandleFunc(fmt.Sprintf("/%s", master.GetInfoRESTEndpoint), func(w http.ResponseWriter, r *http.Request) { info, err := d.getMasterInfo() if err != nil { log.Errorf("Error getting master state. Err: %v", err) http.Error(w, "Error getting master state", http.StatusInternalServerError) return } // convert to json resp, err := json.Marshal(info) if err != nil { http.Error(w, core.Errorf("marshalling json failed. Error: %s", err).Error(), http.StatusInternalServerError) return } w.Write(resp) }) // services REST endpoints // FIXME: we need to remove once service inspect is added s.HandleFunc(fmt.Sprintf("/%s/%s", master.GetServiceRESTEndpoint, "{id}"), get(false, d.services)) s.HandleFunc(fmt.Sprintf("/%s", master.GetServicesRESTEndpoint), get(true, d.services)) // Debug REST endpoint for inspecting ofnet state s.HandleFunc("/debug/ofnet", func(w http.ResponseWriter, r *http.Request) { ofnetMasterState, err := d.ofnetMaster.InspectState() if err != nil { log.Errorf("Error fetching ofnet state. Err: %v", err) http.Error(w, "Error fetching ofnet state", http.StatusInternalServerError) return } w.Write(ofnetMasterState) }) }