route.go 1.1 KB

12345678910111213141516171819202122232425262728293031
  1. package database_meta
  2. import (
  3. "github.com/gin-gonic/gin"
  4. h "dbview/service/internal/modules/database_meta/handler"
  5. svc "dbview/service/internal/modules/database_meta/service"
  6. )
  7. // RegisterRoutes 将 database_meta 模块的路由注册到 gin 引擎
  8. // 调用方应负责构造实际的 MetadataService(以具体 MetadataQuerier 实现为参数)
  9. func RegisterRoutes(r *gin.Engine, svcObj *svc.MetadataService) {
  10. handler := h.NewHandler(svcObj)
  11. grp := r.Group("/database/metadata")
  12. {
  13. // All endpoints use POST and expect JSON bodies
  14. grp.POST("/root", handler.GetRootObjectsHandler)
  15. grp.POST("/children", handler.GetChildObjectsHandler)
  16. grp.POST("/object", handler.GetObjectDetailHandler)
  17. grp.POST("/create/template", handler.DescribeCreateTemplateHandler)
  18. grp.POST("/object/create", handler.CreateObjectHandler)
  19. grp.POST("/update/template", handler.DescribeUpdateTemplateHandler)
  20. grp.POST("/object/update", handler.UpdateObjectHandler)
  21. grp.POST("/delete/template", handler.DescribeDeleteTemplateHandler)
  22. grp.POST("/info", handler.GetMetadataInfoHandler)
  23. grp.POST("/object/delete", handler.DeleteObjectsHandler)
  24. }
  25. }