Listener/main.go
2024-01-16 08:56:52 +01:00

36 lines
833 B
Go

package main
import (
"errors"
"flag"
"log"
"net/http"
"os"
)
func main() {
var pool Pool
pool.logger = log.New(os.Stdout, "[DCS] ", log.Ldate|log.Ltime)
var flagTCP = flag.String("tcp",":12345","Listen [address]:port for the TCP listener.")
var flagHTTP = flag.String("http",":8888","Listen [addres]:port for the HTTP listener.")
flag.Parse()
pool.tcp_port = *flagTCP
pool.http_port = *flagHTTP
http.HandleFunc("/", pool.getRoot)
pool.logger.Println("Starting TCP listener on",pool.tcp_port)
go pool.tcplistener()
pool.logger.Println("Starting HTTP listener on",pool.http_port)
err := http.ListenAndServe(pool.http_port, nil)
if errors.Is(err, http.ErrServerClosed) {
pool.logger.Println("server closed.")
} else if err != nil {
pool.logger.Printf("error starting server: %s\n", err)
os.Exit(1)
}
}