func RestGetService(w *rest.ResponseWriter, r *rest.Request, client *serviced.ControlClient) { var allServices []*dao.Service if err := client.GetServices(&empty, &allServices); err != nil { glog.Errorf("Could not get services: %v", err) RestServerError(w) return } sid, err := url.QueryUnescape(r.PathParam("serviceId")) if err != nil { RestBadRequest(w) return } for _, service := range allServices { if service.Id == sid { w.WriteJson(&service) return } } glog.Errorf("No such service [%v]", sid) RestServerError(w) }
func getNamedServices(client *serviced.ControlClient, nmregex string) ([]*dao.Service, error) { services := []*dao.Service{} if err := client.GetServices(&empty, &services); err != nil { glog.Errorf("Could not get named services: %v", err) return nil, err } return filterByNameRegex(nmregex, services) }
func getServices(client *serviced.ControlClient) ([]*dao.Service, error) { services := []*dao.Service{} if err := client.GetServices(&empty, &services); err != nil { glog.Errorf("Could not get services: %v", err) return nil, err } glog.V(2).Infof("Returning %d services", len(services)) return services, nil }
func RestGetTopServices(w *rest.ResponseWriter, r *rest.Request, client *serviced.ControlClient) { var allServices []*dao.Service topServices := []*dao.Service{} err := client.GetServices(&empty, &allServices) if err != nil { glog.Errorf("Could not get services: %v", err) RestServerError(w) return } for _, service := range allServices { if len(service.ParentServiceId) == 0 { topServices = append(topServices, service) } } glog.V(2).Infof("Returning %d services as top services", len(topServices)) w.WriteJson(&topServices) }