# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc

from bitfount.federated.transport.protos import messages_pb2 as bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2


class MessageServiceStub(object):
    """Missing associated documentation comment in .proto file."""

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

        Args:
            channel: A grpc.Channel.
        """
        self.PodConnect = channel.unary_unary(
                '/messages.MessageService/PodConnect',
                request_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.PodData.SerializeToString,
                response_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.SuccessResponse.FromString,
                )
        self.SetupTaskMailboxes = channel.unary_unary(
                '/messages.MessageService/SetupTaskMailboxes',
                request_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountTasks.SerializeToString,
                response_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.CommunicationDetails.FromString,
                )
        self.StartTraining = channel.unary_unary(
                '/messages.MessageService/StartTraining',
                request_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountTasks.SerializeToString,
                response_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.CommunicationDetails.FromString,
                )
        self.AcknowledgeMessage = channel.unary_unary(
                '/messages.MessageService/AcknowledgeMessage',
                request_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.Acknowledgement.SerializeToString,
                response_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.SuccessResponse.FromString,
                )
        self.GetBitfountMessage = channel.unary_unary(
                '/messages.MessageService/GetBitfountMessage',
                request_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.CommunicationDetails.SerializeToString,
                response_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountMessage.FromString,
                )
        self.SendBitfountMessage = channel.unary_unary(
                '/messages.MessageService/SendBitfountMessage',
                request_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountMessage.SerializeToString,
                response_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.SuccessResponse.FromString,
                )
        self.GetLargeObjectStorage = channel.unary_unary(
                '/messages.MessageService/GetLargeObjectStorage',
                request_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.LargeStorageRequest.SerializeToString,
                response_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BlobStorageData.FromString,
                )


class MessageServiceServicer(object):
    """Missing associated documentation comment in .proto file."""

    def PodConnect(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SetupTaskMailboxes(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def StartTraining(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def AcknowledgeMessage(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetBitfountMessage(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def SendBitfountMessage(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetLargeObjectStorage(self, request, context):
        """Missing associated documentation comment in .proto file."""
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_MessageServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'PodConnect': grpc.unary_unary_rpc_method_handler(
                    servicer.PodConnect,
                    request_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.PodData.FromString,
                    response_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.SuccessResponse.SerializeToString,
            ),
            'SetupTaskMailboxes': grpc.unary_unary_rpc_method_handler(
                    servicer.SetupTaskMailboxes,
                    request_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountTasks.FromString,
                    response_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.CommunicationDetails.SerializeToString,
            ),
            'StartTraining': grpc.unary_unary_rpc_method_handler(
                    servicer.StartTraining,
                    request_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountTasks.FromString,
                    response_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.CommunicationDetails.SerializeToString,
            ),
            'AcknowledgeMessage': grpc.unary_unary_rpc_method_handler(
                    servicer.AcknowledgeMessage,
                    request_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.Acknowledgement.FromString,
                    response_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.SuccessResponse.SerializeToString,
            ),
            'GetBitfountMessage': grpc.unary_unary_rpc_method_handler(
                    servicer.GetBitfountMessage,
                    request_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.CommunicationDetails.FromString,
                    response_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountMessage.SerializeToString,
            ),
            'SendBitfountMessage': grpc.unary_unary_rpc_method_handler(
                    servicer.SendBitfountMessage,
                    request_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountMessage.FromString,
                    response_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.SuccessResponse.SerializeToString,
            ),
            'GetLargeObjectStorage': grpc.unary_unary_rpc_method_handler(
                    servicer.GetLargeObjectStorage,
                    request_deserializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.LargeStorageRequest.FromString,
                    response_serializer=bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BlobStorageData.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'messages.MessageService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


 # This class is part of an EXPERIMENTAL API.
class MessageService(object):
    """Missing associated documentation comment in .proto file."""

    @staticmethod
    def PodConnect(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/messages.MessageService/PodConnect',
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.PodData.SerializeToString,
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.SuccessResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SetupTaskMailboxes(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/messages.MessageService/SetupTaskMailboxes',
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountTasks.SerializeToString,
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.CommunicationDetails.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def StartTraining(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/messages.MessageService/StartTraining',
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountTasks.SerializeToString,
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.CommunicationDetails.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def AcknowledgeMessage(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/messages.MessageService/AcknowledgeMessage',
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.Acknowledgement.SerializeToString,
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.SuccessResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetBitfountMessage(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/messages.MessageService/GetBitfountMessage',
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.CommunicationDetails.SerializeToString,
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountMessage.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def SendBitfountMessage(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/messages.MessageService/SendBitfountMessage',
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BitfountMessage.SerializeToString,
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.SuccessResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetLargeObjectStorage(request,
            target,
            options=(),
            channel_credentials=None,
            call_credentials=None,
            insecure=False,
            compression=None,
            wait_for_ready=None,
            timeout=None,
            metadata=None):
        return grpc.experimental.unary_unary(request, target, '/messages.MessageService/GetLargeObjectStorage',
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.LargeStorageRequest.SerializeToString,
            bitfount_dot_federated_dot_transport_dot_protos_dot_messages__pb2.BlobStorageData.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
