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

from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
from galts_trade_api.transport.protos import common_pb2 as protos_dot_common__pb2
from galts_trade_api.transport.protos.exchange_info import api_pb2 as protos_dot_exchange__info_dot_api__pb2
from galts_trade_api.transport.protos.exchange_info import entities_pb2 as protos_dot_exchange__info_dot_entities__pb2


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

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

    Args:
      channel: A grpc.Channel.
    """
    self.StartSession = channel.unary_unary(
        '/ExchangeInfoApi/StartSession',
        request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
        response_deserializer=protos_dot_common__pb2.SessionHash.FromString,
        )
    self.FinishSession = channel.unary_unary(
        '/ExchangeInfoApi/FinishSession',
        request_serializer=protos_dot_common__pb2.SessionHash.SerializeToString,
        response_deserializer=protos_dot_common__pb2.BoolResult.FromString,
        )
    self.SubscribeToEntitiesChange = channel.unary_stream(
        '/ExchangeInfoApi/SubscribeToEntitiesChange',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.SubscribeToEntitiesChangeIn.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_api__pb2.SubscribeToEntitiesChangeOut.FromString,
        )
    self.GetEntities = channel.unary_unary(
        '/ExchangeInfoApi/GetEntities',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.EntityKinds.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_api__pb2.Entities.FromString,
        )
    self.AddAsset = channel.unary_unary(
        '/ExchangeInfoApi/AddAsset',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.AddAssetIn.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
        )
    self.GetAsset = channel.unary_unary(
        '/ExchangeInfoApi/GetAsset',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_entities__pb2.Asset.FromString,
        )
    self.DeleteAsset = channel.unary_unary(
        '/ExchangeInfoApi/DeleteAsset',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
        )
    self.AddSymbol = channel.unary_unary(
        '/ExchangeInfoApi/AddSymbol',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.AddSymbolIn.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
        )
    self.GetSymbol = channel.unary_unary(
        '/ExchangeInfoApi/GetSymbol',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_entities__pb2.Symbol.FromString,
        )
    self.DeleteSymbol = channel.unary_unary(
        '/ExchangeInfoApi/DeleteSymbol',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
        )
    self.AddMarket = channel.unary_unary(
        '/ExchangeInfoApi/AddMarket',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.AddMarketIn.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
        )
    self.GetMarket = channel.unary_unary(
        '/ExchangeInfoApi/GetMarket',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_entities__pb2.Market.FromString,
        )
    self.DeleteMarket = channel.unary_unary(
        '/ExchangeInfoApi/DeleteMarket',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
        )
    self.AddExchange = channel.unary_unary(
        '/ExchangeInfoApi/AddExchange',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.AddExchangeIn.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
        )
    self.GetExchange = channel.unary_unary(
        '/ExchangeInfoApi/GetExchange',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=protos_dot_exchange__info_dot_entities__pb2.Exchange.FromString,
        )
    self.DeleteExchange = channel.unary_unary(
        '/ExchangeInfoApi/DeleteExchange',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
        )
    self.DisableExchange = channel.unary_unary(
        '/ExchangeInfoApi/DisableExchange',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
        )
    self.EnableExchange = channel.unary_unary(
        '/ExchangeInfoApi/EnableExchange',
        request_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
        response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
        )


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

  def StartSession(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 FinishSession(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 SubscribeToEntitiesChange(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 GetEntities(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 AddAsset(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 GetAsset(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 DeleteAsset(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 AddSymbol(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 GetSymbol(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 DeleteSymbol(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 AddMarket(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 GetMarket(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 DeleteMarket(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 AddExchange(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 GetExchange(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 DeleteExchange(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 DisableExchange(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 EnableExchange(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_ExchangeInfoApiServicer_to_server(servicer, server):
  rpc_method_handlers = {
      'StartSession': grpc.unary_unary_rpc_method_handler(
          servicer.StartSession,
          request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
          response_serializer=protos_dot_common__pb2.SessionHash.SerializeToString,
      ),
      'FinishSession': grpc.unary_unary_rpc_method_handler(
          servicer.FinishSession,
          request_deserializer=protos_dot_common__pb2.SessionHash.FromString,
          response_serializer=protos_dot_common__pb2.BoolResult.SerializeToString,
      ),
      'SubscribeToEntitiesChange': grpc.unary_stream_rpc_method_handler(
          servicer.SubscribeToEntitiesChange,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.SubscribeToEntitiesChangeIn.FromString,
          response_serializer=protos_dot_exchange__info_dot_api__pb2.SubscribeToEntitiesChangeOut.SerializeToString,
      ),
      'GetEntities': grpc.unary_unary_rpc_method_handler(
          servicer.GetEntities,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.EntityKinds.FromString,
          response_serializer=protos_dot_exchange__info_dot_api__pb2.Entities.SerializeToString,
      ),
      'AddAsset': grpc.unary_unary_rpc_method_handler(
          servicer.AddAsset,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.AddAssetIn.FromString,
          response_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
      ),
      'GetAsset': grpc.unary_unary_rpc_method_handler(
          servicer.GetAsset,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=protos_dot_exchange__info_dot_entities__pb2.Asset.SerializeToString,
      ),
      'DeleteAsset': grpc.unary_unary_rpc_method_handler(
          servicer.DeleteAsset,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
      ),
      'AddSymbol': grpc.unary_unary_rpc_method_handler(
          servicer.AddSymbol,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.AddSymbolIn.FromString,
          response_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
      ),
      'GetSymbol': grpc.unary_unary_rpc_method_handler(
          servicer.GetSymbol,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=protos_dot_exchange__info_dot_entities__pb2.Symbol.SerializeToString,
      ),
      'DeleteSymbol': grpc.unary_unary_rpc_method_handler(
          servicer.DeleteSymbol,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
      ),
      'AddMarket': grpc.unary_unary_rpc_method_handler(
          servicer.AddMarket,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.AddMarketIn.FromString,
          response_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
      ),
      'GetMarket': grpc.unary_unary_rpc_method_handler(
          servicer.GetMarket,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=protos_dot_exchange__info_dot_entities__pb2.Market.SerializeToString,
      ),
      'DeleteMarket': grpc.unary_unary_rpc_method_handler(
          servicer.DeleteMarket,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
      ),
      'AddExchange': grpc.unary_unary_rpc_method_handler(
          servicer.AddExchange,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.AddExchangeIn.FromString,
          response_serializer=protos_dot_exchange__info_dot_api__pb2.Id.SerializeToString,
      ),
      'GetExchange': grpc.unary_unary_rpc_method_handler(
          servicer.GetExchange,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=protos_dot_exchange__info_dot_entities__pb2.Exchange.SerializeToString,
      ),
      'DeleteExchange': grpc.unary_unary_rpc_method_handler(
          servicer.DeleteExchange,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
      ),
      'DisableExchange': grpc.unary_unary_rpc_method_handler(
          servicer.DisableExchange,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
      ),
      'EnableExchange': grpc.unary_unary_rpc_method_handler(
          servicer.EnableExchange,
          request_deserializer=protos_dot_exchange__info_dot_api__pb2.Id.FromString,
          response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
      ),
  }
  generic_handler = grpc.method_handlers_generic_handler(
      'ExchangeInfoApi', rpc_method_handlers)
  server.add_generic_rpc_handlers((generic_handler,))
