package analytic import ( "context" "fmt" "git.gocasts.ir/ebhomengo/niki/patientapp/config" ) type Server struct { HTTPServer *config.EchoServer } func NewServer(server *config.EchoServer) *Server { return &Server{ HTTPServer: server, } } func (s Server) Serve() error { s.RegisterRoutes() // Start server return s.HTTPServer.Router.Start(fmt.Sprintf(":%d", s.HTTPServer.Config.Port)) } func (s Server) Stop(ctx context.Context) error { return s.HTTPServer.Router.Shutdown(ctx) } func (s Server) RegisterRoutes() { v1 := s.HTTPServer.Router.Group("/v1") { // Analytic Group analyticGroup := v1.Group("/analytic") NewPatientAnalyticRouter(analyticGroup) } }