You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

35 lines
637 B

package xserver
import (
"context"
"github.com/gin-gonic/gin"
"net/http"
"time"
)
type httpServer struct {
server *http.Server
}
func (h *httpServer) Start() error {
return h.server.ListenAndServe()
}
func (h *httpServer) Shutdown(ctx context.Context) error {
return h.server.Shutdown(ctx)
}
func NewHttp(httpHost string, app *gin.Engine) *httpServer {
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 {
return "http"
}