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

from api.v1 import ocellus_api_module_info_service_pb2 as api_dot_v1_dot_ocellus__api__module__info__service__pb2
from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2
from google.protobuf import struct_pb2 as google_dot_protobuf_dot_struct__pb2
import ocellus_types_pb2 as ocellus__types__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.ReloadModules = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/ReloadModules',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesResponse.FromString,
                )
        self.UpdateModulesConfig = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/UpdateModulesConfig',
                request_serializer=ocellus__types__pb2.GlobalConfig.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.GetModulesConfig = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/GetModulesConfig',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=ocellus__types__pb2.GlobalConfig.FromString,
                )
        self.GetModules = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/GetModules',
                request_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesRequest.SerializeToString,
                response_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesResponse.FromString,
                )
        self.CreateModule = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/CreateModule',
                request_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.CreateModuleRequest.SerializeToString,
                response_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesResponse.FromString,
                )
        self.UpdateModule = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/UpdateModule',
                request_serializer=google_dot_protobuf_dot_struct__pb2.Struct.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_struct__pb2.Struct.FromString,
                )
        self.PatchModule = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/PatchModule',
                request_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.PatchModuleRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_struct__pb2.Struct.FromString,
                )
        self.DeleteModule = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/DeleteModule',
                request_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.DeleteModuleRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.UpdateModuleOrder = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/UpdateModuleOrder',
                request_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.UpdateModuleOrderRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                )
        self.ModuleApiHandler = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/ModuleApiHandler',
                request_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.ModuleApiHandlerRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_struct__pb2.Struct.FromString,
                )
        self.GetRemoteModules = channel.unary_unary(
                '/ocellus.api.v1.module.info.OcellusModuleInfoService/GetRemoteModules',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetRemoteModulesResponse.FromString,
                )


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

    def ReloadModules(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 UpdateModulesConfig(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 GetModulesConfig(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 GetModules(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 CreateModule(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 UpdateModule(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 PatchModule(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 DeleteModule(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 UpdateModuleOrder(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 ModuleApiHandler(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 GetRemoteModules(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_OcellusModuleInfoServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'ReloadModules': grpc.unary_unary_rpc_method_handler(
                    servicer.ReloadModules,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesResponse.SerializeToString,
            ),
            'UpdateModulesConfig': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateModulesConfig,
                    request_deserializer=ocellus__types__pb2.GlobalConfig.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'GetModulesConfig': grpc.unary_unary_rpc_method_handler(
                    servicer.GetModulesConfig,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=ocellus__types__pb2.GlobalConfig.SerializeToString,
            ),
            'GetModules': grpc.unary_unary_rpc_method_handler(
                    servicer.GetModules,
                    request_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesRequest.FromString,
                    response_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesResponse.SerializeToString,
            ),
            'CreateModule': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateModule,
                    request_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.CreateModuleRequest.FromString,
                    response_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesResponse.SerializeToString,
            ),
            'UpdateModule': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateModule,
                    request_deserializer=google_dot_protobuf_dot_struct__pb2.Struct.FromString,
                    response_serializer=google_dot_protobuf_dot_struct__pb2.Struct.SerializeToString,
            ),
            'PatchModule': grpc.unary_unary_rpc_method_handler(
                    servicer.PatchModule,
                    request_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.PatchModuleRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_struct__pb2.Struct.SerializeToString,
            ),
            'DeleteModule': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteModule,
                    request_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.DeleteModuleRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'UpdateModuleOrder': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateModuleOrder,
                    request_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.UpdateModuleOrderRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'ModuleApiHandler': grpc.unary_unary_rpc_method_handler(
                    servicer.ModuleApiHandler,
                    request_deserializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.ModuleApiHandlerRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_struct__pb2.Struct.SerializeToString,
            ),
            'GetRemoteModules': grpc.unary_unary_rpc_method_handler(
                    servicer.GetRemoteModules,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetRemoteModulesResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'ocellus.api.v1.module.info.OcellusModuleInfoService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def ReloadModules(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/ReloadModules',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateModulesConfig(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/UpdateModulesConfig',
            ocellus__types__pb2.GlobalConfig.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetModulesConfig(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/GetModulesConfig',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ocellus__types__pb2.GlobalConfig.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetModules(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/GetModules',
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesRequest.SerializeToString,
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def CreateModule(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/CreateModule',
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.CreateModuleRequest.SerializeToString,
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetModulesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateModule(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/UpdateModule',
            google_dot_protobuf_dot_struct__pb2.Struct.SerializeToString,
            google_dot_protobuf_dot_struct__pb2.Struct.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def PatchModule(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/PatchModule',
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.PatchModuleRequest.SerializeToString,
            google_dot_protobuf_dot_struct__pb2.Struct.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteModule(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/DeleteModule',
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.DeleteModuleRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateModuleOrder(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/UpdateModuleOrder',
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.UpdateModuleOrderRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ModuleApiHandler(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/ModuleApiHandler',
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.ModuleApiHandlerRequest.SerializeToString,
            google_dot_protobuf_dot_struct__pb2.Struct.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetRemoteModules(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, '/ocellus.api.v1.module.info.OcellusModuleInfoService/GetRemoteModules',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            api_dot_v1_dot_ocellus__api__module__info__service__pb2.GetRemoteModulesResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
