|
|
|
@ -7,29 +7,30 @@ import ( |
|
|
|
|
"time" |
|
|
|
|
) |
|
|
|
|
|
|
|
|
|
type httpServer struct { |
|
|
|
|
type Http struct { |
|
|
|
|
server *http.Server |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (h *httpServer) Start() error { |
|
|
|
|
func (h *Http) Start() error { |
|
|
|
|
return h.server.ListenAndServe() |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (h *httpServer) Shutdown(ctx context.Context) error { |
|
|
|
|
func (h *Http) Shutdown(ctx context.Context) error { |
|
|
|
|
return h.server.Shutdown(ctx) |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func NewHttp(httpHost string, app *gin.Engine) *httpServer { |
|
|
|
|
server := &http.Server{ |
|
|
|
|
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, |
|
|
|
|
}, |
|
|
|
|
} |
|
|
|
|
return &httpServer{server: server} |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
func (c *httpServer) Name() string { |
|
|
|
|
func (c *Http) Name() string { |
|
|
|
|
return "http" |
|
|
|
|
} |
|
|
|
|