76 lines
2.6 KiB
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)
|
|
}
|