# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
"""Client and server classes corresponding to protobuf-defined services."""
import grpc
from omni.pro.protos.v1.catalogs import family_pb2 as v1_dot_catalogs_dot_family__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.FamilyCreate = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/FamilyCreate",
            request_serializer=v1_dot_catalogs_dot_family__pb2.FamilyCreateRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.FamilyCreateResponse.FromString,
        )
        self.FamilyRead = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/FamilyRead",
            request_serializer=v1_dot_catalogs_dot_family__pb2.FamilyReadRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.FamilyReadResponse.FromString,
        )
        self.FamilyUpdate = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/FamilyUpdate",
            request_serializer=v1_dot_catalogs_dot_family__pb2.FamilyUpdateRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.FamilyUpdateResponse.FromString,
        )
        self.FamilyDelete = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/FamilyDelete",
            request_serializer=v1_dot_catalogs_dot_family__pb2.FamilyDeleteRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.FamilyDeleteResponse.FromString,
        )
        self.GroupCreate = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/GroupCreate",
            request_serializer=v1_dot_catalogs_dot_family__pb2.GroupCreateRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.GroupCreateResponse.FromString,
        )
        self.GroupRead = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/GroupRead",
            request_serializer=v1_dot_catalogs_dot_family__pb2.GroupReadRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.GroupReadResponse.FromString,
        )
        self.GroupUpdate = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/GroupUpdate",
            request_serializer=v1_dot_catalogs_dot_family__pb2.GroupUpdateRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.GroupUpdateResponse.FromString,
        )
        self.GroupDelete = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/GroupDelete",
            request_serializer=v1_dot_catalogs_dot_family__pb2.GroupDeleteRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.GroupDeleteResponse.FromString,
        )
        self.AttributeCreate = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeCreate",
            request_serializer=v1_dot_catalogs_dot_family__pb2.AttributeCreateRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeCreateResponse.FromString,
        )
        self.AttributeRead = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeRead",
            request_serializer=v1_dot_catalogs_dot_family__pb2.AttributeReadRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeReadResponse.FromString,
        )
        self.AttributeUpdate = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeUpdate",
            request_serializer=v1_dot_catalogs_dot_family__pb2.AttributeUpdateRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeUpdateResponse.FromString,
        )
        self.AttributeDelete = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeDelete",
            request_serializer=v1_dot_catalogs_dot_family__pb2.AttributeDeleteRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeDeleteResponse.FromString,
        )
        self.AttributeVariantCreate = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeVariantCreate",
            request_serializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantCreateRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantCreateResponse.FromString,
        )
        self.AttributeVariantRead = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeVariantRead",
            request_serializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantReadRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantReadResponse.FromString,
        )
        self.AttributeVariantUpdate = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeVariantUpdate",
            request_serializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantUpdateRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantUpdateResponse.FromString,
        )
        self.AttributeVariantDelete = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeVariantDelete",
            request_serializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantDeleteRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantDeleteResponse.FromString,
        )
        self.CategoryRead = channel.unary_unary(
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/CategoryRead",
            request_serializer=v1_dot_catalogs_dot_family__pb2.CategoryReadRequest.SerializeToString,
            response_deserializer=v1_dot_catalogs_dot_family__pb2.CategoryReadResponse.FromString,
        )


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

    def FamilyCreate(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 FamilyRead(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 FamilyUpdate(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 FamilyDelete(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 GroupCreate(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 GroupRead(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 GroupUpdate(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 GroupDelete(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 AttributeCreate(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 AttributeRead(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 AttributeUpdate(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 AttributeDelete(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 AttributeVariantCreate(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 AttributeVariantRead(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 AttributeVariantUpdate(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 AttributeVariantDelete(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 CategoryRead(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_FamilyServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
        "FamilyCreate": grpc.unary_unary_rpc_method_handler(
            servicer.FamilyCreate,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.FamilyCreateRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.FamilyCreateResponse.SerializeToString,
        ),
        "FamilyRead": grpc.unary_unary_rpc_method_handler(
            servicer.FamilyRead,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.FamilyReadRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.FamilyReadResponse.SerializeToString,
        ),
        "FamilyUpdate": grpc.unary_unary_rpc_method_handler(
            servicer.FamilyUpdate,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.FamilyUpdateRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.FamilyUpdateResponse.SerializeToString,
        ),
        "FamilyDelete": grpc.unary_unary_rpc_method_handler(
            servicer.FamilyDelete,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.FamilyDeleteRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.FamilyDeleteResponse.SerializeToString,
        ),
        "GroupCreate": grpc.unary_unary_rpc_method_handler(
            servicer.GroupCreate,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.GroupCreateRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.GroupCreateResponse.SerializeToString,
        ),
        "GroupRead": grpc.unary_unary_rpc_method_handler(
            servicer.GroupRead,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.GroupReadRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.GroupReadResponse.SerializeToString,
        ),
        "GroupUpdate": grpc.unary_unary_rpc_method_handler(
            servicer.GroupUpdate,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.GroupUpdateRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.GroupUpdateResponse.SerializeToString,
        ),
        "GroupDelete": grpc.unary_unary_rpc_method_handler(
            servicer.GroupDelete,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.GroupDeleteRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.GroupDeleteResponse.SerializeToString,
        ),
        "AttributeCreate": grpc.unary_unary_rpc_method_handler(
            servicer.AttributeCreate,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeCreateRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.AttributeCreateResponse.SerializeToString,
        ),
        "AttributeRead": grpc.unary_unary_rpc_method_handler(
            servicer.AttributeRead,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeReadRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.AttributeReadResponse.SerializeToString,
        ),
        "AttributeUpdate": grpc.unary_unary_rpc_method_handler(
            servicer.AttributeUpdate,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeUpdateRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.AttributeUpdateResponse.SerializeToString,
        ),
        "AttributeDelete": grpc.unary_unary_rpc_method_handler(
            servicer.AttributeDelete,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeDeleteRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.AttributeDeleteResponse.SerializeToString,
        ),
        "AttributeVariantCreate": grpc.unary_unary_rpc_method_handler(
            servicer.AttributeVariantCreate,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantCreateRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantCreateResponse.SerializeToString,
        ),
        "AttributeVariantRead": grpc.unary_unary_rpc_method_handler(
            servicer.AttributeVariantRead,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantReadRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantReadResponse.SerializeToString,
        ),
        "AttributeVariantUpdate": grpc.unary_unary_rpc_method_handler(
            servicer.AttributeVariantUpdate,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantUpdateRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantUpdateResponse.SerializeToString,
        ),
        "AttributeVariantDelete": grpc.unary_unary_rpc_method_handler(
            servicer.AttributeVariantDelete,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantDeleteRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.AttributeVariantDeleteResponse.SerializeToString,
        ),
        "CategoryRead": grpc.unary_unary_rpc_method_handler(
            servicer.CategoryRead,
            request_deserializer=v1_dot_catalogs_dot_family__pb2.CategoryReadRequest.FromString,
            response_serializer=v1_dot_catalogs_dot_family__pb2.CategoryReadResponse.SerializeToString,
        ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
        "pro.omni.oms.api.v1.catalogs.family.FamilyService", rpc_method_handlers
    )
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def FamilyCreate(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/FamilyCreate",
            v1_dot_catalogs_dot_family__pb2.FamilyCreateRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.FamilyCreateResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def FamilyRead(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/FamilyRead",
            v1_dot_catalogs_dot_family__pb2.FamilyReadRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.FamilyReadResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def FamilyUpdate(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/FamilyUpdate",
            v1_dot_catalogs_dot_family__pb2.FamilyUpdateRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.FamilyUpdateResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def FamilyDelete(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/FamilyDelete",
            v1_dot_catalogs_dot_family__pb2.FamilyDeleteRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.FamilyDeleteResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def GroupCreate(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/GroupCreate",
            v1_dot_catalogs_dot_family__pb2.GroupCreateRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.GroupCreateResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def GroupRead(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/GroupRead",
            v1_dot_catalogs_dot_family__pb2.GroupReadRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.GroupReadResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def GroupUpdate(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/GroupUpdate",
            v1_dot_catalogs_dot_family__pb2.GroupUpdateRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.GroupUpdateResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def GroupDelete(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/GroupDelete",
            v1_dot_catalogs_dot_family__pb2.GroupDeleteRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.GroupDeleteResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def AttributeCreate(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeCreate",
            v1_dot_catalogs_dot_family__pb2.AttributeCreateRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.AttributeCreateResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def AttributeRead(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeRead",
            v1_dot_catalogs_dot_family__pb2.AttributeReadRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.AttributeReadResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def AttributeUpdate(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeUpdate",
            v1_dot_catalogs_dot_family__pb2.AttributeUpdateRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.AttributeUpdateResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def AttributeDelete(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeDelete",
            v1_dot_catalogs_dot_family__pb2.AttributeDeleteRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.AttributeDeleteResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def AttributeVariantCreate(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeVariantCreate",
            v1_dot_catalogs_dot_family__pb2.AttributeVariantCreateRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.AttributeVariantCreateResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def AttributeVariantRead(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeVariantRead",
            v1_dot_catalogs_dot_family__pb2.AttributeVariantReadRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.AttributeVariantReadResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def AttributeVariantUpdate(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeVariantUpdate",
            v1_dot_catalogs_dot_family__pb2.AttributeVariantUpdateRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.AttributeVariantUpdateResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def AttributeVariantDelete(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/AttributeVariantDelete",
            v1_dot_catalogs_dot_family__pb2.AttributeVariantDeleteRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.AttributeVariantDeleteResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )

    @staticmethod
    def CategoryRead(
        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,
            "/pro.omni.oms.api.v1.catalogs.family.FamilyService/CategoryRead",
            v1_dot_catalogs_dot_family__pb2.CategoryReadRequest.SerializeToString,
            v1_dot_catalogs_dot_family__pb2.CategoryReadResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
        )
