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

from . import wavemq_pb2 as wavemq__pb2


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

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

    Args:
      channel: A grpc.Channel.
    """
    self.Publish = channel.unary_unary(
        '/mqpb.WAVEMQ/Publish',
        request_serializer=wavemq__pb2.PublishParams.SerializeToString,
        response_deserializer=wavemq__pb2.PublishResponse.FromString,
        )
    self.Subscribe = channel.unary_stream(
        '/mqpb.WAVEMQ/Subscribe',
        request_serializer=wavemq__pb2.SubscribeParams.SerializeToString,
        response_deserializer=wavemq__pb2.SubscriptionMessage.FromString,
        )
    self.Query = channel.unary_stream(
        '/mqpb.WAVEMQ/Query',
        request_serializer=wavemq__pb2.QueryParams.SerializeToString,
        response_deserializer=wavemq__pb2.QueryMessage.FromString,
        )
    self.ConnectionStatus = channel.unary_unary(
        '/mqpb.WAVEMQ/ConnectionStatus',
        request_serializer=wavemq__pb2.ConnectionStatusParams.SerializeToString,
        response_deserializer=wavemq__pb2.ConnectionStatusResponse.FromString,
        )


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

  def Publish(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 Subscribe(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 Query(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 ConnectionStatus(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_WAVEMQServicer_to_server(servicer, server):
  rpc_method_handlers = {
      'Publish': grpc.unary_unary_rpc_method_handler(
          servicer.Publish,
          request_deserializer=wavemq__pb2.PublishParams.FromString,
          response_serializer=wavemq__pb2.PublishResponse.SerializeToString,
      ),
      'Subscribe': grpc.unary_stream_rpc_method_handler(
          servicer.Subscribe,
          request_deserializer=wavemq__pb2.SubscribeParams.FromString,
          response_serializer=wavemq__pb2.SubscriptionMessage.SerializeToString,
      ),
      'Query': grpc.unary_stream_rpc_method_handler(
          servicer.Query,
          request_deserializer=wavemq__pb2.QueryParams.FromString,
          response_serializer=wavemq__pb2.QueryMessage.SerializeToString,
      ),
      'ConnectionStatus': grpc.unary_unary_rpc_method_handler(
          servicer.ConnectionStatus,
          request_deserializer=wavemq__pb2.ConnectionStatusParams.FromString,
          response_serializer=wavemq__pb2.ConnectionStatusResponse.SerializeToString,
      ),
  }
  generic_handler = grpc.method_handlers_generic_handler(
      'mqpb.WAVEMQ', rpc_method_handlers)
  server.add_generic_rpc_handlers((generic_handler,))


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

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

    Args:
      channel: A grpc.Channel.
    """
    self.PeerPublish = channel.unary_unary(
        '/mqpb.WAVEMQPeering/PeerPublish',
        request_serializer=wavemq__pb2.PeerPublishParams.SerializeToString,
        response_deserializer=wavemq__pb2.PeerPublishResponse.FromString,
        )
    self.PeerSubscribe = channel.unary_stream(
        '/mqpb.WAVEMQPeering/PeerSubscribe',
        request_serializer=wavemq__pb2.PeerSubscribeParams.SerializeToString,
        response_deserializer=wavemq__pb2.SubscriptionMessage.FromString,
        )
    self.PeerUnsubscribe = channel.unary_unary(
        '/mqpb.WAVEMQPeering/PeerUnsubscribe',
        request_serializer=wavemq__pb2.PeerUnsubscribeParams.SerializeToString,
        response_deserializer=wavemq__pb2.PeerUnsubscribeResponse.FromString,
        )
    self.PeerQueryRequest = channel.unary_stream(
        '/mqpb.WAVEMQPeering/PeerQueryRequest',
        request_serializer=wavemq__pb2.PeerQueryParams.SerializeToString,
        response_deserializer=wavemq__pb2.QueryMessage.FromString,
        )


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

  def PeerPublish(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 PeerSubscribe(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 PeerUnsubscribe(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 PeerQueryRequest(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_WAVEMQPeeringServicer_to_server(servicer, server):
  rpc_method_handlers = {
      'PeerPublish': grpc.unary_unary_rpc_method_handler(
          servicer.PeerPublish,
          request_deserializer=wavemq__pb2.PeerPublishParams.FromString,
          response_serializer=wavemq__pb2.PeerPublishResponse.SerializeToString,
      ),
      'PeerSubscribe': grpc.unary_stream_rpc_method_handler(
          servicer.PeerSubscribe,
          request_deserializer=wavemq__pb2.PeerSubscribeParams.FromString,
          response_serializer=wavemq__pb2.SubscriptionMessage.SerializeToString,
      ),
      'PeerUnsubscribe': grpc.unary_unary_rpc_method_handler(
          servicer.PeerUnsubscribe,
          request_deserializer=wavemq__pb2.PeerUnsubscribeParams.FromString,
          response_serializer=wavemq__pb2.PeerUnsubscribeResponse.SerializeToString,
      ),
      'PeerQueryRequest': grpc.unary_stream_rpc_method_handler(
          servicer.PeerQueryRequest,
          request_deserializer=wavemq__pb2.PeerQueryParams.FromString,
          response_serializer=wavemq__pb2.QueryMessage.SerializeToString,
      ),
  }
  generic_handler = grpc.method_handlers_generic_handler(
      'mqpb.WAVEMQPeering', rpc_method_handlers)
  server.add_generic_rpc_handlers((generic_handler,))
