service.go 606 B

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