Use environment DialContext and Listen everywhere

This commit is contained in:
Tom Wiesing 2022-09-19 12:42:33 +02:00
parent f19619ef9f
commit b0d3c686ba
No known key found for this signature in database
11 changed files with 64 additions and 30 deletions

View file

@ -32,13 +32,22 @@ var errServerListen = exit.Error{
}
func (s server) Run(context wisski_distillery.Context) error {
handler, err := context.Environment.Dis().Server(context.IOStream)
dis := context.Environment
handler, err := dis.Control().Server(context.IOStream)
if err != nil {
return err
}
context.Printf("Listening on %s\n", s.Bind)
err = http.ListenAndServe(s.Bind, http.StripPrefix(s.Prefix, handler))
// make a new listener
listener, err := dis.Core.Environment.Listen("tcp", s.Bind)
if err != nil {
return errServerListen.Wrap(err)
}
// and serve that listener
err = http.Serve(listener, http.StripPrefix(s.Prefix, handler))
if err == nil {
return nil
}