package main import ( di "git.apihub24.de/admin/generic-di" serverevents "git.apihub24.de/admin/server_events/v2" "git.apihub24.de/admin/server_events/v2/implementation_test/events" "log" "net/http" "time" ) func main() { serverEventsMiddleware := di.Inject[serverevents.IMiddleware]() eventRegistration := di.Inject[serverevents.IEventHandlerRegistration]() eventRegistration.Add("ping", events.NewPingEventHandler) eventRegistration.Add("greet me", events.NewGreeterEventHandler) router := http.NewServeMux() router.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) { if r.Method == "GET" { w.Header().Set("Content-Type", "text/html") w.WriteHeader(http.StatusOK) _, _ = w.Write([]byte(Index)) return } }) router = serverEventsMiddleware.Use(serverevents.MiddlewareOptions{ Path: "/events", ContextLifetime: 500 * time.Second, KeepAliveTime: 2 * time.Second, }, router) log.Fatal(http.ListenAndServe(":8080", router)) }