package xserver import ( "context" "github.com/gin-gonic/gin" "net/http" "time" ) type Http struct { server *http.Server } func (h *Http) Start() error { return h.server.ListenAndServe() } func (h *Http) Shutdown(ctx context.Context) error { return h.server.Shutdown(ctx) } func NewHttp(httpHost string, app *gin.Engine) *Http { return &Http{ server: &http.Server{ Addr: httpHost, Handler: app, ReadTimeout: 60 * time.Second, WriteTimeout: 60 * time.Second, MaxHeaderBytes: 20 << 20, }, } } func (c *Http) Name() string { return "http" }