mirror of
https://github.com/v2ray/v2ray-core.git
synced 2026-11-05 16:30:07 +00:00
simplify dependency resolution
This commit is contained in:
13 files changed
+135
-56
No files matched your search
@@ -75,17 +75,21 @@ func (s *statsServer) QueryStats(ctx context.Context, request *QueryStatsRequest
|
||||
}
|
||||
|
||||
type service struct {
|
||||
v *core.Instance
|
||||
statsManager feature_stats.Manager
|
||||
}
|
||||
|
||||
func (s *service) Register(server *grpc.Server) {
|
||||
f := s.v.GetFeature(feature_stats.ManagerType())
|
||||
RegisterStatsServiceServer(server, NewStatsServer(f.(feature_stats.Manager)))
|
||||
RegisterStatsServiceServer(server, NewStatsServer(s.statsManager))
|
||||
}
|
||||
|
||||
func init() {
|
||||
common.Must(common.RegisterConfig((*Config)(nil), func(ctx context.Context, cfg interface{}) (interface{}, error) {
|
||||
s := core.MustFromContext(ctx)
|
||||
return &service{v: s}, nil
|
||||
s := new(service)
|
||||
|
||||
core.RequireFeatures(ctx, func(sm feature_stats.Manager) {
|
||||
s.statsManager = sm
|
||||
})
|
||||
|
||||
return s, nil
|
||||
}))
|
||||
}
|
||||
Reference in new issue
Block a user