service.go 633 B

12345678910111213141516171819202122232425262728293031
  1. //go:build !confonly
  2. // +build !confonly
  3. package commander
  4. import (
  5. "context"
  6. "google.golang.org/grpc"
  7. "google.golang.org/grpc/reflection"
  8. "github.com/v2fly/v2ray-core/v4/common"
  9. )
  10. // Service is a Commander service.
  11. type Service interface {
  12. // Register registers the service itself to a gRPC server.
  13. Register(*grpc.Server)
  14. }
  15. type reflectionService struct{}
  16. func (r reflectionService) Register(s *grpc.Server) {
  17. reflection.Register(s)
  18. }
  19. func init() {
  20. common.Must(common.RegisterConfig((*ReflectionConfig)(nil), func(ctx context.Context, cfg interface{}) (interface{}, error) {
  21. return reflectionService{}, nil
  22. }))
  23. }