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

from . import context_pb2 as context__pb2
from . import monitoring_pb2 as monitoring__pb2


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

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

    Args:
      channel: A grpc.Channel.
    """
    self.CreateKpi = channel.unary_unary(
        '/monitoring.MonitoringService/CreateKpi',
        request_serializer=monitoring__pb2.CreateKpiRequest.SerializeToString,
        response_deserializer=monitoring__pb2.KpiId.FromString,
        )
    self.IncludeKpi = channel.unary_unary(
        '/monitoring.MonitoringService/IncludeKpi',
        request_serializer=monitoring__pb2.IncludeKpiRequest.SerializeToString,
        response_deserializer=context__pb2.Empty.FromString,
        )
    self.MonitorKpi = channel.unary_unary(
        '/monitoring.MonitoringService/MonitorKpi',
        request_serializer=monitoring__pb2.MonitorKpiRequest.SerializeToString,
        response_deserializer=context__pb2.Empty.FromString,
        )
    self.MonitorDeviceKpi = channel.unary_unary(
        '/monitoring.MonitoringService/MonitorDeviceKpi',
        request_serializer=monitoring__pb2.MonitorDeviceKpiRequest.SerializeToString,
        response_deserializer=context__pb2.Empty.FromString,
        )
    self.GetStreamKpi = channel.unary_stream(
        '/monitoring.MonitoringService/GetStreamKpi',
        request_serializer=monitoring__pb2.KpiId.SerializeToString,
        response_deserializer=monitoring__pb2.Kpi.FromString,
        )
    self.GetInstantKpi = channel.unary_unary(
        '/monitoring.MonitoringService/GetInstantKpi',
        request_serializer=monitoring__pb2.KpiId.SerializeToString,
        response_deserializer=monitoring__pb2.Kpi.FromString,
        )


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

  def CreateKpi(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 IncludeKpi(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 MonitorKpi(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 MonitorDeviceKpi(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 GetStreamKpi(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 GetInstantKpi(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_MonitoringServiceServicer_to_server(servicer, server):
  rpc_method_handlers = {
      'CreateKpi': grpc.unary_unary_rpc_method_handler(
          servicer.CreateKpi,
          request_deserializer=monitoring__pb2.CreateKpiRequest.FromString,
          response_serializer=monitoring__pb2.KpiId.SerializeToString,
      ),
      'IncludeKpi': grpc.unary_unary_rpc_method_handler(
          servicer.IncludeKpi,
          request_deserializer=monitoring__pb2.IncludeKpiRequest.FromString,
          response_serializer=context__pb2.Empty.SerializeToString,
      ),
      'MonitorKpi': grpc.unary_unary_rpc_method_handler(
          servicer.MonitorKpi,
          request_deserializer=monitoring__pb2.MonitorKpiRequest.FromString,
          response_serializer=context__pb2.Empty.SerializeToString,
      ),
      'MonitorDeviceKpi': grpc.unary_unary_rpc_method_handler(
          servicer.MonitorDeviceKpi,
          request_deserializer=monitoring__pb2.MonitorDeviceKpiRequest.FromString,
          response_serializer=context__pb2.Empty.SerializeToString,
      ),
      'GetStreamKpi': grpc.unary_stream_rpc_method_handler(
          servicer.GetStreamKpi,
          request_deserializer=monitoring__pb2.KpiId.FromString,
          response_serializer=monitoring__pb2.Kpi.SerializeToString,
      ),
      'GetInstantKpi': grpc.unary_unary_rpc_method_handler(
          servicer.GetInstantKpi,
          request_deserializer=monitoring__pb2.KpiId.FromString,
          response_serializer=monitoring__pb2.Kpi.SerializeToString,
      ),
  }
  generic_handler = grpc.method_handlers_generic_handler(
      'monitoring.MonitoringService', rpc_method_handlers)
  server.add_generic_rpc_handlers((generic_handler,))
