JCC-CSScheduler/schedulerMiddleware/internal/http/server.go

76 lines
2.6 KiB
Go

package http
import (
"github.com/gin-gonic/gin"
"gitlink.org.cn/cloudream/common/pkgs/logger"
"gitlink.org.cn/cloudream/scheduler/schedulerMiddleware/internal/services"
)
type Server struct {
engine *gin.Engine
listenAddr string
svc *services.Service
}
func NewServer(listenAddr string, svc *services.Service) (*Server, error) {
engine := gin.New()
return &Server{
engine: engine,
listenAddr: listenAddr,
svc: svc,
}, nil
}
func (s *Server) Serve() error {
s.initRouters()
logger.Infof("start serving http at: %s", s.listenAddr)
err := s.engine.Run(s.listenAddr)
if err != nil {
logger.Infof("http stopped with error: %s", err.Error())
return err
}
logger.Infof("http stopped")
return nil
}
func (s *Server) initRouters() {
s.engine.POST("/jobSet/notifyUploaded", s.JobSetSvc().Upload)
s.engine.POST("/jobSet/uploadStatus", s.JobSetSvc().UploadStatus)
s.engine.POST("/jobSet/submit", s.JobSetSvc().Submit)
s.engine.POST("/jobSet/localFileUploaded", s.JobSetSvc().LocalFileUploaded)
s.engine.POST("/jobSet/queryUploaded", s.JobSetSvc().QueryUploaded)
s.engine.POST("/jobSet/createPackage", s.JobSetSvc().CreatePackage)
s.engine.POST("/jobSet/deletePackage", s.JobSetSvc().DeletePackage)
s.engine.POST("/jobSet/resourceRange", s.JobSetSvc().ResourceRange)
s.engine.POST("/jobSet/queryResource", s.JobSetSvc().QueryResource)
s.engine.POST("/jobSet/queryImages", s.JobSetSvc().QueryImages)
s.engine.POST("/jobSet/addCodeVersion", s.JobSetSvc().ClonePackage)
s.engine.POST("/jobSet/queryCodeVersion", s.JobSetSvc().QueryClonePackage)
s.engine.POST("/jobSet/removeCodeVersion", s.JobSetSvc().RemoveClonePackage)
s.engine.POST("/jobSet/createFolder", s.JobSetSvc().CreateFolder)
s.engine.POST("/jobSet/deleteFolder", s.JobSetSvc().DeleteFolder)
s.engine.POST("/jobSet/deleteFile", s.JobSetSvc().DeleteFile)
s.engine.POST("/jobSet/binding", s.JobSetSvc().Binding)
s.engine.POST("/jobSet/queryBinding", s.JobSetSvc().QueryBinding)
s.engine.POST("/jobSet/removeBinding", s.JobSetSvc().RemoveBinding)
s.engine.POST("/access/applyRequestAccess", s.AccessSvc().ApplyRequestAccess)
s.engine.POST("/access/approvalRequestAccess", s.AccessSvc().ApprovalRequestAccess)
s.engine.POST("/access/updateAccessRequestStatus", s.AccessSvc().UpdateAccessRequestStatus)
s.engine.POST("/access/getAccessRequests", s.AccessSvc().GetAccessRequests)
s.engine.POST("/access/updateBindingDataAccess", s.AccessSvc().UpdateBindingDataAccess)
s.engine.GET("/user/query", s.UserSvc().QueryUser)
s.engine.GET("/user/register", s.UserSvc().AddUser)
s.engine.GET("/user/update", s.UserSvc().UpdateUser)
}