From c8d040d8b874b98305434506fb54c3805ade40eb Mon Sep 17 00:00:00 2001 From: Oliver Davies Date: Sun, 21 Sep 2025 00:10:17 +0100 Subject: [PATCH] Refactor Signed-off-by: Oliver Davies --- go-api/handlers/handler.go | 39 ++++++++++++++++++++++++++++++++++++++ go-api/main.go | 33 ++------------------------------ 2 files changed, 41 insertions(+), 31 deletions(-) create mode 100644 go-api/handlers/handler.go diff --git a/go-api/handlers/handler.go b/go-api/handlers/handler.go new file mode 100644 index 0000000..934936c --- /dev/null +++ b/go-api/handlers/handler.go @@ -0,0 +1,39 @@ +package handlers + +import ( + "encoding/json" + "log" + "net/http" + + "go-api/utils" +) + +type ErrorResponse struct { + Message string `json:"message"` + StatusCode int `json:"statusCode"` +} + +type SuccessResponse struct { + Name string `json:"name"` +} + +func Handler(w http.ResponseWriter, r *http.Request) { + log.Println("Running handler...") + + code := utils.GetResponseCode(r) + + w.WriteHeader(code) + w.Header().Set("Content-Type", "application/json") + + if (code != 200) { + json.NewEncoder(w).Encode(ErrorResponse{ + Message: "There has been an error.", + StatusCode: 400, + }) + } else { + json.NewEncoder(w).Encode(SuccessResponse{ + Name: "Oliver Davies", + }) + } +} + diff --git a/go-api/main.go b/go-api/main.go index cd374b7..d8685ba 100644 --- a/go-api/main.go +++ b/go-api/main.go @@ -1,44 +1,15 @@ package main import ( - "encoding/json" "log" "net/http" + "go-api/handlers" "go-api/utils" ) -type ErrorResponse struct { - Message string `json:"message"` - StatusCode int `json:"statusCode"` -} - -type SuccessResponse struct { - Name string `json:"name"` -} - -func handler(w http.ResponseWriter, r *http.Request) { - log.Println("Running handler...") - - code := utils.GetResponseCode(r) - - w.WriteHeader(code) - w.Header().Set("Content-Type", "application/json") - - if (code != 200) { - json.NewEncoder(w).Encode(ErrorResponse{ - Message: "There has been an error.", - StatusCode: 400, - }) - } else { - json.NewEncoder(w).Encode(SuccessResponse{ - Name: "Oliver Davies", - }) - } -} - func main() { - http.HandleFunc("/", handler) + http.HandleFunc("/", handlers.Handler) addr := ":" + utils.GetPort()