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

from dlubal.api.common import model_id_pb2 as dlubal_dot_api_dot_common_dot_model__id__pb2
from dlubal.api.common import table_data_pb2 as dlubal_dot_api_dot_common_dot_table__data__pb2
from dlubal.api.rfem import application_pb2 as dlubal_dot_api_dot_rfem_dot_application__pb2
from dlubal.api.rfem.results import results_query_pb2 as dlubal_dot_api_dot_rfem_dot_results_dot_results__query__pb2
from google.protobuf import empty_pb2 as google_dot_protobuf_dot_empty__pb2

GRPC_GENERATED_VERSION = '1.68.0'
GRPC_VERSION = grpc.__version__
_version_not_supported = False

try:
    from grpc._utilities import first_version_is_lower
    _version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
except ImportError:
    _version_not_supported = True

if _version_not_supported:
    raise RuntimeError(
        f'The grpc package installed is at version {GRPC_VERSION},'
        + f' but the generated code in dlubal/api/rfem/application_pb2_grpc.py depends on'
        + f' grpcio>={GRPC_GENERATED_VERSION}.'
        + f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
        + f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
    )


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.create_model = channel.unary_unary(
                '/dlubal.api.rfem.Application/create_model',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.CreateModelRequest.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.FromString,
                _registered_method=True)
        self.open_model = channel.unary_unary(
                '/dlubal.api.rfem.Application/open_model',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.OpenModelRequest.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.FromString,
                _registered_method=True)
        self.save_model = channel.unary_unary(
                '/dlubal.api.rfem.Application/save_model',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.SaveModelAsRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.close_model = channel.unary_unary(
                '/dlubal.api.rfem.Application/close_model',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.CloseModelRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.close_all_models = channel.unary_unary(
                '/dlubal.api.rfem.Application/close_all_models',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.CloseAllModelsRequest.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.get_active_model = channel.unary_unary(
                '/dlubal.api.rfem.Application/get_active_model',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.FromString,
                _registered_method=True)
        self.set_active_model = channel.unary_unary(
                '/dlubal.api.rfem.Application/set_active_model',
                request_serializer=dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.close_application = channel.unary_unary(
                '/dlubal.api.rfem.Application/close_application',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.get_model_list = channel.unary_unary(
                '/dlubal.api.rfem.Application/get_model_list',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ModelList.FromString,
                _registered_method=True)
        self.get_application_info = channel.unary_unary(
                '/dlubal.api.rfem.Application/get_application_info',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ApplicationInfo.FromString,
                _registered_method=True)
        self.close_connection = channel.unary_unary(
                '/dlubal.api.rfem.Application/close_connection',
                request_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.get_object_impl = channel.unary_unary(
                '/dlubal.api.rfem.Application/get_object_impl',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.FromString,
                _registered_method=True)
        self.get_object_list_impl = channel.unary_unary(
                '/dlubal.api.rfem.Application/get_object_list_impl',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.FromString,
                _registered_method=True)
        self.create_object_impl = channel.unary_unary(
                '/dlubal.api.rfem.Application/create_object_impl',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.create_object_list_impl = channel.unary_unary(
                '/dlubal.api.rfem.Application/create_object_list_impl',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.update_object_impl = channel.unary_unary(
                '/dlubal.api.rfem.Application/update_object_impl',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.update_object_list_impl = channel.unary_unary(
                '/dlubal.api.rfem.Application/update_object_list_impl',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.delete_object_impl = channel.unary_unary(
                '/dlubal.api.rfem.Application/delete_object_impl',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.delete_object_list_impl = channel.unary_unary(
                '/dlubal.api.rfem.Application/delete_object_list_impl',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.delete_all_objects = channel.unary_unary(
                '/dlubal.api.rfem.Application/delete_all_objects',
                request_serializer=dlubal_dot_api_dot_common_dot_model__id__pb2.OptionalModelId.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)
        self.calculate_all = channel.unary_unary(
                '/dlubal.api.rfem.Application/calculate_all',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.CalculateAllRequest.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.OperationResult.FromString,
                _registered_method=True)
        self.get_results_impl = channel.unary_unary(
                '/dlubal.api.rfem.Application/get_results_impl',
                request_serializer=dlubal_dot_api_dot_rfem_dot_results_dot_results__query__pb2.ResultsQuery.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_common_dot_table__data__pb2.TableData.FromString,
                _registered_method=True)
        self.plausibility_check = channel.unary_unary(
                '/dlubal.api.rfem.Application/plausibility_check',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.PlausibilityCheckRequest.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.OperationResult.FromString,
                _registered_method=True)
        self.get_object_id_list = channel.unary_unary(
                '/dlubal.api.rfem.Application/get_object_id_list',
                request_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.GetObjectIdListRequest.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectIdList.FromString,
                _registered_method=True)
        self.get_model_main_parameters = channel.unary_unary(
                '/dlubal.api.rfem.Application/get_model_main_parameters',
                request_serializer=dlubal_dot_api_dot_common_dot_model__id__pb2.OptionalModelId.SerializeToString,
                response_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ModelMainParameters.FromString,
                _registered_method=True)
        self.generate_combinations = channel.unary_unary(
                '/dlubal.api.rfem.Application/generate_combinations',
                request_serializer=dlubal_dot_api_dot_common_dot_model__id__pb2.OptionalModelId.SerializeToString,
                response_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                _registered_method=True)


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

    def create_model(self, request, context):
        """Creates new model with the name specified in request.
        Returns model id of created model
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def open_model(self, request, context):
        """Opens model from path specified in 'name' field of the request
        Returns model id of opened model
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def save_model(self, request, context):
        """Saves model specified by model id to optional specified path
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def close_model(self, request, context):
        """Closes model specified by model id
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def close_all_models(self, request, context):
        """Closes all open models
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def get_active_model(self, request, context):
        """Returns model id of an active model
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def set_active_model(self, request, context):
        """Sets active model specified by model id
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def close_application(self, request, context):
        """Closes the whole application
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def get_model_list(self, request, context):
        """Returns list of models and information about them
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def get_application_info(self, request, context):
        """Returns information about the application
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def close_connection(self, request, context):
        """Closes connection to API server
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def get_object_impl(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 get_object_list_impl(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 create_object_impl(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 create_object_list_impl(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 update_object_impl(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 update_object_list_impl(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 delete_object_impl(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 delete_object_list_impl(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 delete_all_objects(self, request, context):
        """Deletes all objects
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def calculate_all(self, request, context):
        """Performs a full calculation for all objects.
        Returns result of the operation, description of the result and possibly additional information about an error.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def get_results_impl(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 plausibility_check(self, request, context):
        """Performs validation based on the specified validation type.
        Returns result of the operation, description of the result and possibly additional information about an error.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def get_object_id_list(self, request, context):
        """Retrieves object ids filtered by a specific type.
        If you want to retrieve all object ids, do not specify the object_type.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def get_model_main_parameters(self, request, context):
        """Retrieves the main parameters of a model, including its ID, name, description,
        comments, file path, and associated project details.
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def generate_combinations(self, request, context):
        """Generates combinations
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_ApplicationServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'create_model': grpc.unary_unary_rpc_method_handler(
                    servicer.create_model,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.CreateModelRequest.FromString,
                    response_serializer=dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.SerializeToString,
            ),
            'open_model': grpc.unary_unary_rpc_method_handler(
                    servicer.open_model,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.OpenModelRequest.FromString,
                    response_serializer=dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.SerializeToString,
            ),
            'save_model': grpc.unary_unary_rpc_method_handler(
                    servicer.save_model,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.SaveModelAsRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'close_model': grpc.unary_unary_rpc_method_handler(
                    servicer.close_model,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.CloseModelRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'close_all_models': grpc.unary_unary_rpc_method_handler(
                    servicer.close_all_models,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.CloseAllModelsRequest.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'get_active_model': grpc.unary_unary_rpc_method_handler(
                    servicer.get_active_model,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.SerializeToString,
            ),
            'set_active_model': grpc.unary_unary_rpc_method_handler(
                    servicer.set_active_model,
                    request_deserializer=dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'close_application': grpc.unary_unary_rpc_method_handler(
                    servicer.close_application,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'get_model_list': grpc.unary_unary_rpc_method_handler(
                    servicer.get_model_list,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ModelList.SerializeToString,
            ),
            'get_application_info': grpc.unary_unary_rpc_method_handler(
                    servicer.get_application_info,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ApplicationInfo.SerializeToString,
            ),
            'close_connection': grpc.unary_unary_rpc_method_handler(
                    servicer.close_connection,
                    request_deserializer=google_dot_protobuf_dot_empty__pb2.Empty.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'get_object_impl': grpc.unary_unary_rpc_method_handler(
                    servicer.get_object_impl,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.FromString,
                    response_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.SerializeToString,
            ),
            'get_object_list_impl': grpc.unary_unary_rpc_method_handler(
                    servicer.get_object_list_impl,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.FromString,
                    response_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.SerializeToString,
            ),
            'create_object_impl': grpc.unary_unary_rpc_method_handler(
                    servicer.create_object_impl,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'create_object_list_impl': grpc.unary_unary_rpc_method_handler(
                    servicer.create_object_list_impl,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'update_object_impl': grpc.unary_unary_rpc_method_handler(
                    servicer.update_object_impl,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'update_object_list_impl': grpc.unary_unary_rpc_method_handler(
                    servicer.update_object_list_impl,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'delete_object_impl': grpc.unary_unary_rpc_method_handler(
                    servicer.delete_object_impl,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.Object.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'delete_object_list_impl': grpc.unary_unary_rpc_method_handler(
                    servicer.delete_object_list_impl,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'delete_all_objects': grpc.unary_unary_rpc_method_handler(
                    servicer.delete_all_objects,
                    request_deserializer=dlubal_dot_api_dot_common_dot_model__id__pb2.OptionalModelId.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
            'calculate_all': grpc.unary_unary_rpc_method_handler(
                    servicer.calculate_all,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.CalculateAllRequest.FromString,
                    response_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.OperationResult.SerializeToString,
            ),
            'get_results_impl': grpc.unary_unary_rpc_method_handler(
                    servicer.get_results_impl,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_results_dot_results__query__pb2.ResultsQuery.FromString,
                    response_serializer=dlubal_dot_api_dot_common_dot_table__data__pb2.TableData.SerializeToString,
            ),
            'plausibility_check': grpc.unary_unary_rpc_method_handler(
                    servicer.plausibility_check,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.PlausibilityCheckRequest.FromString,
                    response_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.OperationResult.SerializeToString,
            ),
            'get_object_id_list': grpc.unary_unary_rpc_method_handler(
                    servicer.get_object_id_list,
                    request_deserializer=dlubal_dot_api_dot_rfem_dot_application__pb2.GetObjectIdListRequest.FromString,
                    response_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectIdList.SerializeToString,
            ),
            'get_model_main_parameters': grpc.unary_unary_rpc_method_handler(
                    servicer.get_model_main_parameters,
                    request_deserializer=dlubal_dot_api_dot_common_dot_model__id__pb2.OptionalModelId.FromString,
                    response_serializer=dlubal_dot_api_dot_rfem_dot_application__pb2.ModelMainParameters.SerializeToString,
            ),
            'generate_combinations': grpc.unary_unary_rpc_method_handler(
                    servicer.generate_combinations,
                    request_deserializer=dlubal_dot_api_dot_common_dot_model__id__pb2.OptionalModelId.FromString,
                    response_serializer=google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'dlubal.api.rfem.Application', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))
    server.add_registered_method_handlers('dlubal.api.rfem.Application', rpc_method_handlers)


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

    @staticmethod
    def create_model(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,
            '/dlubal.api.rfem.Application/create_model',
            dlubal_dot_api_dot_rfem_dot_application__pb2.CreateModelRequest.SerializeToString,
            dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def open_model(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,
            '/dlubal.api.rfem.Application/open_model',
            dlubal_dot_api_dot_rfem_dot_application__pb2.OpenModelRequest.SerializeToString,
            dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def save_model(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,
            '/dlubal.api.rfem.Application/save_model',
            dlubal_dot_api_dot_rfem_dot_application__pb2.SaveModelAsRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def close_model(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,
            '/dlubal.api.rfem.Application/close_model',
            dlubal_dot_api_dot_rfem_dot_application__pb2.CloseModelRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def close_all_models(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,
            '/dlubal.api.rfem.Application/close_all_models',
            dlubal_dot_api_dot_rfem_dot_application__pb2.CloseAllModelsRequest.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def get_active_model(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,
            '/dlubal.api.rfem.Application/get_active_model',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def set_active_model(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,
            '/dlubal.api.rfem.Application/set_active_model',
            dlubal_dot_api_dot_common_dot_model__id__pb2.ModelId.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def close_application(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,
            '/dlubal.api.rfem.Application/close_application',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def get_model_list(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,
            '/dlubal.api.rfem.Application/get_model_list',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            dlubal_dot_api_dot_rfem_dot_application__pb2.ModelList.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def get_application_info(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,
            '/dlubal.api.rfem.Application/get_application_info',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            dlubal_dot_api_dot_rfem_dot_application__pb2.ApplicationInfo.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def close_connection(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,
            '/dlubal.api.rfem.Application/close_connection',
            google_dot_protobuf_dot_empty__pb2.Empty.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def get_object_impl(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,
            '/dlubal.api.rfem.Application/get_object_impl',
            dlubal_dot_api_dot_rfem_dot_application__pb2.Object.SerializeToString,
            dlubal_dot_api_dot_rfem_dot_application__pb2.Object.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def get_object_list_impl(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,
            '/dlubal.api.rfem.Application/get_object_list_impl',
            dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.SerializeToString,
            dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def create_object_impl(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,
            '/dlubal.api.rfem.Application/create_object_impl',
            dlubal_dot_api_dot_rfem_dot_application__pb2.Object.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def create_object_list_impl(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,
            '/dlubal.api.rfem.Application/create_object_list_impl',
            dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def update_object_impl(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,
            '/dlubal.api.rfem.Application/update_object_impl',
            dlubal_dot_api_dot_rfem_dot_application__pb2.Object.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def update_object_list_impl(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,
            '/dlubal.api.rfem.Application/update_object_list_impl',
            dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def delete_object_impl(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,
            '/dlubal.api.rfem.Application/delete_object_impl',
            dlubal_dot_api_dot_rfem_dot_application__pb2.Object.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def delete_object_list_impl(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,
            '/dlubal.api.rfem.Application/delete_object_list_impl',
            dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectList.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def delete_all_objects(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,
            '/dlubal.api.rfem.Application/delete_all_objects',
            dlubal_dot_api_dot_common_dot_model__id__pb2.OptionalModelId.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def calculate_all(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,
            '/dlubal.api.rfem.Application/calculate_all',
            dlubal_dot_api_dot_rfem_dot_application__pb2.CalculateAllRequest.SerializeToString,
            dlubal_dot_api_dot_rfem_dot_application__pb2.OperationResult.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def get_results_impl(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,
            '/dlubal.api.rfem.Application/get_results_impl',
            dlubal_dot_api_dot_rfem_dot_results_dot_results__query__pb2.ResultsQuery.SerializeToString,
            dlubal_dot_api_dot_common_dot_table__data__pb2.TableData.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def plausibility_check(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,
            '/dlubal.api.rfem.Application/plausibility_check',
            dlubal_dot_api_dot_rfem_dot_application__pb2.PlausibilityCheckRequest.SerializeToString,
            dlubal_dot_api_dot_rfem_dot_application__pb2.OperationResult.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def get_object_id_list(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,
            '/dlubal.api.rfem.Application/get_object_id_list',
            dlubal_dot_api_dot_rfem_dot_application__pb2.GetObjectIdListRequest.SerializeToString,
            dlubal_dot_api_dot_rfem_dot_application__pb2.ObjectIdList.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def get_model_main_parameters(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,
            '/dlubal.api.rfem.Application/get_model_main_parameters',
            dlubal_dot_api_dot_common_dot_model__id__pb2.OptionalModelId.SerializeToString,
            dlubal_dot_api_dot_rfem_dot_application__pb2.ModelMainParameters.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def generate_combinations(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,
            '/dlubal.api.rfem.Application/generate_combinations',
            dlubal_dot_api_dot_common_dot_model__id__pb2.OptionalModelId.SerializeToString,
            google_dot_protobuf_dot_empty__pb2.Empty.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)
