center_ops.go 927 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. package actorRemote
  2. import (
  3. cherryApp "f1-game/internal/cherry_app"
  4. "f1-game/internal/code"
  5. nameActor "f1-game/internal/name/actor"
  6. nameRemote "f1-game/internal/name/remote"
  7. "f1-game/internal/pb"
  8. cfacade "github.com/cherry-game/cherry/facade"
  9. )
  10. type centerOps struct {
  11. }
  12. func newCenterOps() *centerOps {
  13. return &centerOps{}
  14. }
  15. // Ping center节点是否响应
  16. func (p *centerOps) Ping() bool {
  17. rsp := &pb.Bool{}
  18. errCode := cherryApp.CallWait(p.target(), nameRemote.CenterOps_Ping, nil, rsp)
  19. if code.IsFail(errCode) {
  20. return false
  21. }
  22. return rsp.Value
  23. }
  24. func (p *centerOps) GetDBReport() (*pb.DBQueueReportList, int32) {
  25. rsp := &pb.DBQueueReportList{}
  26. errCode := cherryApp.CallWait(p.target(), nameRemote.Ops_DbReport, nil, rsp)
  27. if code.IsFail(errCode) {
  28. return nil, errCode
  29. }
  30. return rsp, code.OK
  31. }
  32. func (*centerOps) target() string {
  33. return cfacade.NewPath(centerNodeID(), nameActor.CenterOps)
  34. }