28 lines
488 B
Go
28 lines
488 B
Go
package internal
|
|
|
|
import (
|
|
"context"
|
|
"net/http"
|
|
"time"
|
|
)
|
|
|
|
type Server struct {
|
|
httpServer *http.Server
|
|
}
|
|
|
|
func (s *Server) Run(port string,handler http.Handler) error {
|
|
s.httpServer = &http.Server{
|
|
Addr: ":" + port,
|
|
Handler: handler,
|
|
ReadTimeout: 10 * time.Second,
|
|
WriteTimeout: 10 * time.Second,
|
|
MaxHeaderBytes: 1 << 20,
|
|
}
|
|
return s.httpServer.ListenAndServe()
|
|
}
|
|
|
|
func (s *Server) Shutdown(ctx context.Context) error{
|
|
return s.httpServer.Shutdown(ctx)
|
|
}
|
|
|