daemon_things.go 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. package v1
  2. import (
  3. "net/http"
  4. backend2 "github.com/ChineseSubFinder/ChineseSubFinder/pkg/types/backend"
  5. "github.com/gin-gonic/gin"
  6. )
  7. func (cb *ControllerBase) DaemonStartHandler(c *gin.Context) {
  8. var err error
  9. defer func() {
  10. // 统一的异常处理
  11. cb.ErrorProcess(c, "DaemonStartHandler", err)
  12. }()
  13. if cb.cronHelper.CronHelperRunning() == false {
  14. go func() {
  15. // 砍掉,启动就进行扫描的逻辑
  16. cb.cronHelper.Start(false)
  17. }()
  18. }
  19. c.JSON(http.StatusOK, backend2.ReplyCommon{
  20. Message: "ok",
  21. })
  22. }
  23. func (cb *ControllerBase) DaemonStopHandler(c *gin.Context) {
  24. var err error
  25. defer func() {
  26. // 统一的异常处理
  27. cb.ErrorProcess(c, "DaemonStopHandler", err)
  28. }()
  29. if cb.cronHelper.CronHelperRunning() == true {
  30. go func() {
  31. cb.cronHelper.Stop()
  32. }()
  33. }
  34. c.JSON(http.StatusOK, backend2.ReplyCommon{
  35. Message: "ok",
  36. })
  37. }
  38. func (cb *ControllerBase) DaemonStatusHandler(c *gin.Context) {
  39. var err error
  40. defer func() {
  41. // 统一的异常处理
  42. cb.ErrorProcess(c, "DaemonStatusHandler", err)
  43. }()
  44. c.JSON(http.StatusOK, backend2.ReplyJobStatus{
  45. Status: cb.cronHelper.CronRunningStatusString(),
  46. })
  47. }