service.go 585 B

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