# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
import grpc

from . import reporter_pb2 as src_dot_ray_dot_protobuf_dot_reporter__pb2


class ReporterServiceStub(object):
  # missing associated documentation comment in .proto file
  pass

  def __init__(self, channel):
    """Constructor.

    Args:
      channel: A grpc.Channel.
    """
    self.GetProfilingStats = channel.unary_unary(
        '/ray.rpc.ReporterService/GetProfilingStats',
        request_serializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.GetProfilingStatsRequest.SerializeToString,
        response_deserializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.GetProfilingStatsReply.FromString,
        )
    self.ReportMetrics = channel.unary_unary(
        '/ray.rpc.ReporterService/ReportMetrics',
        request_serializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.ReportMetricsRequest.SerializeToString,
        response_deserializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.ReportMetricsReply.FromString,
        )
    self.ReportOCMetrics = channel.unary_unary(
        '/ray.rpc.ReporterService/ReportOCMetrics',
        request_serializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.ReportOCMetricsRequest.SerializeToString,
        response_deserializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.ReportOCMetricsReply.FromString,
        )


class ReporterServiceServicer(object):
  # missing associated documentation comment in .proto file
  pass

  def GetProfilingStats(self, request, context):
    # missing associated documentation comment in .proto file
    pass
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')

  def ReportMetrics(self, request, context):
    # missing associated documentation comment in .proto file
    pass
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')

  def ReportOCMetrics(self, request, context):
    # missing associated documentation comment in .proto file
    pass
    context.set_code(grpc.StatusCode.UNIMPLEMENTED)
    context.set_details('Method not implemented!')
    raise NotImplementedError('Method not implemented!')


def add_ReporterServiceServicer_to_server(servicer, server):
  rpc_method_handlers = {
      'GetProfilingStats': grpc.unary_unary_rpc_method_handler(
          servicer.GetProfilingStats,
          request_deserializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.GetProfilingStatsRequest.FromString,
          response_serializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.GetProfilingStatsReply.SerializeToString,
      ),
      'ReportMetrics': grpc.unary_unary_rpc_method_handler(
          servicer.ReportMetrics,
          request_deserializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.ReportMetricsRequest.FromString,
          response_serializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.ReportMetricsReply.SerializeToString,
      ),
      'ReportOCMetrics': grpc.unary_unary_rpc_method_handler(
          servicer.ReportOCMetrics,
          request_deserializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.ReportOCMetricsRequest.FromString,
          response_serializer=src_dot_ray_dot_protobuf_dot_reporter__pb2.ReportOCMetricsReply.SerializeToString,
      ),
  }
  generic_handler = grpc.method_handlers_generic_handler(
      'ray.rpc.ReporterService', rpc_method_handlers)
  server.add_generic_rpc_handlers((generic_handler,))
