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

from grid.protos.grid.v1 import experiment_service_pb2 as grid_dot_v1_dot_experiment__service__pb2


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

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

    Args:
      channel: A grpc.Channel.
    """
    self.CreateExperiment = channel.unary_unary(
        '/grid.v1.ExperimentService/CreateExperiment',
        request_serializer=grid_dot_v1_dot_experiment__service__pb2.CreateExperimentRequest.SerializeToString,
        response_deserializer=grid_dot_v1_dot_experiment__service__pb2.CreateExperimentResponse.FromString,
        )
    self.GetExperiment = channel.unary_unary(
        '/grid.v1.ExperimentService/GetExperiment',
        request_serializer=grid_dot_v1_dot_experiment__service__pb2.GetExperimentRequest.SerializeToString,
        response_deserializer=grid_dot_v1_dot_experiment__service__pb2.GetExperimentResponse.FromString,
        )
    self.ListExperiments = channel.unary_unary(
        '/grid.v1.ExperimentService/ListExperiments',
        request_serializer=grid_dot_v1_dot_experiment__service__pb2.ListExperimentsRequest.SerializeToString,
        response_deserializer=grid_dot_v1_dot_experiment__service__pb2.ListExperimentsResponse.FromString,
        )
    self.UpdateExperiment = channel.unary_unary(
        '/grid.v1.ExperimentService/UpdateExperiment',
        request_serializer=grid_dot_v1_dot_experiment__service__pb2.UpdateExperimentRequest.SerializeToString,
        response_deserializer=grid_dot_v1_dot_experiment__service__pb2.UpdateExperimentResponse.FromString,
        )
    self.UpdateExperimentStatus = channel.unary_unary(
        '/grid.v1.ExperimentService/UpdateExperimentStatus',
        request_serializer=grid_dot_v1_dot_experiment__service__pb2.UpdateExperimentStatusRequest.SerializeToString,
        response_deserializer=grid_dot_v1_dot_experiment__service__pb2.UpdateExperimentStatusResponse.FromString,
        )
    self.DeleteExperiment = channel.unary_unary(
        '/grid.v1.ExperimentService/DeleteExperiment',
        request_serializer=grid_dot_v1_dot_experiment__service__pb2.DeleteExperimentRequest.SerializeToString,
        response_deserializer=grid_dot_v1_dot_experiment__service__pb2.DeleteExperimentResponse.FromString,
        )
    self.WatchExperiments = channel.unary_stream(
        '/grid.v1.ExperimentService/WatchExperiments',
        request_serializer=grid_dot_v1_dot_experiment__service__pb2.WatchExperimentsRequest.SerializeToString,
        response_deserializer=grid_dot_v1_dot_experiment__service__pb2.WatchExperimentsResponse.FromString,
        )


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

  def CreateExperiment(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 GetExperiment(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 ListExperiments(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 UpdateExperiment(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 UpdateExperimentStatus(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 DeleteExperiment(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 WatchExperiments(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_ExperimentServiceServicer_to_server(servicer, server):
  rpc_method_handlers = {
      'CreateExperiment': grpc.unary_unary_rpc_method_handler(
          servicer.CreateExperiment,
          request_deserializer=grid_dot_v1_dot_experiment__service__pb2.CreateExperimentRequest.FromString,
          response_serializer=grid_dot_v1_dot_experiment__service__pb2.CreateExperimentResponse.SerializeToString,
      ),
      'GetExperiment': grpc.unary_unary_rpc_method_handler(
          servicer.GetExperiment,
          request_deserializer=grid_dot_v1_dot_experiment__service__pb2.GetExperimentRequest.FromString,
          response_serializer=grid_dot_v1_dot_experiment__service__pb2.GetExperimentResponse.SerializeToString,
      ),
      'ListExperiments': grpc.unary_unary_rpc_method_handler(
          servicer.ListExperiments,
          request_deserializer=grid_dot_v1_dot_experiment__service__pb2.ListExperimentsRequest.FromString,
          response_serializer=grid_dot_v1_dot_experiment__service__pb2.ListExperimentsResponse.SerializeToString,
      ),
      'UpdateExperiment': grpc.unary_unary_rpc_method_handler(
          servicer.UpdateExperiment,
          request_deserializer=grid_dot_v1_dot_experiment__service__pb2.UpdateExperimentRequest.FromString,
          response_serializer=grid_dot_v1_dot_experiment__service__pb2.UpdateExperimentResponse.SerializeToString,
      ),
      'UpdateExperimentStatus': grpc.unary_unary_rpc_method_handler(
          servicer.UpdateExperimentStatus,
          request_deserializer=grid_dot_v1_dot_experiment__service__pb2.UpdateExperimentStatusRequest.FromString,
          response_serializer=grid_dot_v1_dot_experiment__service__pb2.UpdateExperimentStatusResponse.SerializeToString,
      ),
      'DeleteExperiment': grpc.unary_unary_rpc_method_handler(
          servicer.DeleteExperiment,
          request_deserializer=grid_dot_v1_dot_experiment__service__pb2.DeleteExperimentRequest.FromString,
          response_serializer=grid_dot_v1_dot_experiment__service__pb2.DeleteExperimentResponse.SerializeToString,
      ),
      'WatchExperiments': grpc.unary_stream_rpc_method_handler(
          servicer.WatchExperiments,
          request_deserializer=grid_dot_v1_dot_experiment__service__pb2.WatchExperimentsRequest.FromString,
          response_serializer=grid_dot_v1_dot_experiment__service__pb2.WatchExperimentsResponse.SerializeToString,
      ),
  }
  generic_handler = grpc.method_handlers_generic_handler(
      'grid.v1.ExperimentService', rpc_method_handlers)
  server.add_generic_rpc_handlers((generic_handler,))
