diff options
Diffstat (limited to 'api/api.go')
| -rw-r--r-- | api/api.go | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/api/api.go b/api/api.go deleted file mode 100644 index c197774..0000000 --- a/api/api.go +++ /dev/null @@ -1,57 +0,0 @@ -package api - -import ( - "net/http" - "os" - "os/signal" - "strconv" - "syscall" - "time" - - mux "github.com/gorilla/mux" - log "github.com/sirupsen/logrus" -) - -func cleanup() { - log.Print("Shutting down server...") -} - -// Define router and start server -func Serve(port int) { - // Sigint trapper - c := make(chan os.Signal) - signal.Notify(c, os.Interrupt, syscall.SIGTERM) - go func() { - <-c - cleanup() - os.Exit(0) - }() - - // Define Mux Router - r := mux.NewRouter() - r.HandleFunc("/health", healthCheckFunc) - r.HandleFunc("/api", insertFunc).Methods("POST") - r.HandleFunc("/api/{hash}", getHashFunc).Methods("GET") - - http.Handle("/", r) - - // Start HTTP server - server := newServer(":"+strconv.Itoa(port), r) - log.Printf("Starting server on %d", port) - - defer cleanup() - err := server.ListenAndServe() - if err != nil { - log.Fatal(err) - } -} - -// Function to create new HTTP server -func newServer(addr string, router http.Handler) *http.Server { - return &http.Server{ - Addr: addr, - Handler: router, - ReadTimeout: time.Second * 30, - WriteTimeout: time.Second * 30, - } -} |