From dff4d455e07d639b82a0bed814f41d0656e9b6d0 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Sat, 21 Sep 2024 14:03:45 +0300 Subject: cleanup --- internal/server/server.go | 49 ----------------------------------------------- 1 file changed, 49 deletions(-) delete mode 100644 internal/server/server.go (limited to 'internal/server/server.go') diff --git a/internal/server/server.go b/internal/server/server.go deleted file mode 100644 index b2cb0d0..0000000 --- a/internal/server/server.go +++ /dev/null @@ -1,49 +0,0 @@ -package server - -import ( - "fmt" - "log" - "net/http" - - config "codeberg.org/snonux/gos/internal/config/server" - "codeberg.org/snonux/gos/internal/server/health" -) - -type Server struct { - Status health.Status - Conf config.ServerConfig -} - -type HandlerFuncWithError func(http.ResponseWriter, *http.Request) error - -func New(conf config.ServerConfig, status health.Status) Server { - return Server{Conf: conf, Status: status} -} - -func (serv Server) Handle(name string, handler HandlerFuncWithError) { - var ( - handlerPath = fmt.Sprintf("/%s", name) - handlerName = fmt.Sprintf("%sHandler", name) - ) - - http.HandleFunc(handlerPath, func(w http.ResponseWriter, r *http.Request) { - log.Println("Someone requested", handlerName) - - // The health endpoint doesn't require an API key - if handlerName != "healthHandler" { - accessHealthStatusKey := "server.Handler.Access" - if r.Header.Get("X-API-KEY") != serv.Conf.APIKey { - http.Error(w, "Invalid API key", http.StatusUnauthorized) - serv.Status.Set(health.Critical, accessHealthStatusKey, fmt.Errorf("Unauthorized access attempt to %s", handlerName)) - return - } - serv.Status.Clear(accessHealthStatusKey) - } - - if err := handler(w, r); err != nil { - serv.Status.Set(health.Critical, handlerName, err) - return - } - serv.Status.Clear(handlerName) - }) -} -- cgit v1.2.3