func NewHandler(documentRoot string) http.Handler { glog.V(2).Infof("root: %s", documentRoot) fileServer := cacheheader.New(contenttype.New(http.FileServer(http.Dir(documentRoot)))) handlerFinder := part.New("") handlerFinder.RegisterHandler("/", fileServer) handlerFinder.RegisterHandler("/css", fileServer) handlerFinder.RegisterHandler("/js", fileServer) handlerFinder.RegisterHandler("/images", fileServer) return log_handler.New(fallback.New(handlerFinder, static.NewWithReturnCode("not found", 404))) }
func (h *handlerConfiguration) GetHandler() http.Handler { glog.V(2).Infof("root: %s", h.documentRoot) fileServer := cacheheader.New(contenttype.New(http.FileServer(http.Dir(h.documentRoot)))) handlerFinder := part.New("") handlerFinder.RegisterHandler("/", fileServer) handlerFinder.RegisterHandler("/css", fileServer) handlerFinder.RegisterHandler("/js", fileServer) handlerFinder.RegisterHandler("/images", fileServer) handlerFinder.RegisterHandler("/status", h.handle_errors(booking_status_handler.New())) handlerFinder.RegisterHandler("/calendar", h.handle_errors(booking_calendar_handler.New(h.calendarWriter.WriteCalendar, h.configService.GetStringDefault))) handlerFinder.RegisterHandlerFinder("/date", h.createDateHandlerFinder("/date")) handlerFinder.RegisterHandlerFinder("/model", h.createModelHandlerFinder("/model")) handlerFinder.RegisterHandlerFinder("/shooting", h.createShootingHandlerFinder("/shooting")) handlerFinder.RegisterHandlerFinder("/user", h.createUserHandlerFinder("/user")) handlerFinder.RegisterHandlerFinder("/config", h.createConfigHandlerFinder("/config")) handlerFinder.RegisterHandlerFinder("/authentication", h.createAuthenticationHandlerFinder("/authentication")) handlerFinder.RegisterHandlerFinder("/date_user", h.createDateUserHandler("/date_user")) handlerFinder.RegisterHandlerFinder("/shooting_user", h.createShootingUserHandler("/shooting_user")) return log_handler.New(fallback.New(handlerFinder, static.NewWithReturnCode("not found", 404))) }