@@ -3,11 +3,27 @@ package rpc
33import (
44 "context"
55
6+ "github.com/pasarguard/node/backend"
67 "github.com/pasarguard/node/common"
8+ "google.golang.org/grpc/codes"
9+ "google.golang.org/grpc/status"
710)
811
12+ func (s * Service ) backend () (backend.Backend , error ) {
13+ backend := s .Backend ()
14+ if backend == nil {
15+ return nil , status .Errorf (codes .Unavailable , "backend not initialized" )
16+ }
17+ return backend , nil
18+ }
19+
920func (s * Service ) GetStats (ctx context.Context , request * common.StatRequest ) (* common.StatResponse , error ) {
10- stats , err := s .Backend ().GetStats (ctx , request )
21+ backend , err := s .backend ()
22+ if err != nil {
23+ return nil , err
24+ }
25+
26+ stats , err := backend .GetStats (ctx , request )
1127 if err != nil {
1228 err = common .InterceptNotFound (err )
1329 return nil , err
@@ -16,7 +32,12 @@ func (s *Service) GetStats(ctx context.Context, request *common.StatRequest) (*c
1632}
1733
1834func (s * Service ) GetUserOnlineStats (ctx context.Context , request * common.StatRequest ) (* common.OnlineStatResponse , error ) {
19- stats , err := s .Backend ().GetUserOnlineStats (ctx , request .GetName ())
35+ backend , err := s .backend ()
36+ if err != nil {
37+ return nil , err
38+ }
39+
40+ stats , err := backend .GetUserOnlineStats (ctx , request .GetName ())
2041 if err != nil {
2142 err = common .InterceptNotFound (err )
2243 return nil , err
@@ -25,7 +46,12 @@ func (s *Service) GetUserOnlineStats(ctx context.Context, request *common.StatRe
2546}
2647
2748func (s * Service ) GetUserOnlineIpListStats (ctx context.Context , request * common.StatRequest ) (* common.StatsOnlineIpListResponse , error ) {
28- stats , err := s .Backend ().GetUserOnlineIpListStats (ctx , request .GetName ())
49+ backend , err := s .backend ()
50+ if err != nil {
51+ return nil , err
52+ }
53+
54+ stats , err := backend .GetUserOnlineIpListStats (ctx , request .GetName ())
2955 if err != nil {
3056 err = common .InterceptNotFound (err )
3157 return nil , err
@@ -34,7 +60,12 @@ func (s *Service) GetUserOnlineIpListStats(ctx context.Context, request *common.
3460}
3561
3662func (s * Service ) GetBackendStats (ctx context.Context , _ * common.Empty ) (* common.BackendStatsResponse , error ) {
37- return s .Backend ().GetSysStats (ctx )
63+ backend , err := s .backend ()
64+ if err != nil {
65+ return nil , err
66+ }
67+
68+ return backend .GetSysStats (ctx )
3869}
3970
4071func (s * Service ) GetOutboundsLatency (ctx context.Context , request * common.LatencyRequest ) (* common.LatencyResponse , error ) {
0 commit comments