summaryrefslogtreecommitdiff
path: root/internal/server/server.go
blob: 5b6cb8ed18a657ca0a931831eb1833df7a45fffe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
package server

import (
	"io"
	"log"

	"net/http"
)

type ServerConfig struct {
	Name string
}

type Server struct {
	config *ServerConfig
}

func NewServer(config *ServerConfig) Server {
	return Server{config: config}
}

func (server *Server) Serve(addr string) {
	http.HandleFunc("GET /", func(w http.ResponseWriter, r *http.Request) {
		io.WriteString(w, "Hello World!\n")
	})

	log.Default().Printf("Server \"%s\" listening at %s", server.config.Name, addr)
	err := http.ListenAndServe(addr, nil)
	log.Fatal(err)
}