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

from _qwak_proto.qwak.vectors.v1.collection import collection_service_pb2 as qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2


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

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

        Args:
            channel: A grpc.Channel.
        """
        self.CreateCollection = channel.unary_unary(
                '/qwak.vector.store.v1.collection.VectorCollectionService/CreateCollection',
                request_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.CreateCollectionRequest.SerializeToString,
                response_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.CreateCollectionResponse.FromString,
                )
        self.UpdateCollection = channel.unary_unary(
                '/qwak.vector.store.v1.collection.VectorCollectionService/UpdateCollection',
                request_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.UpdateCollectionRequest.SerializeToString,
                response_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.UpdateCollectionResponse.FromString,
                )
        self.GetCollectionById = channel.unary_unary(
                '/qwak.vector.store.v1.collection.VectorCollectionService/GetCollectionById',
                request_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByIdRequest.SerializeToString,
                response_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByIdResponse.FromString,
                )
        self.GetCollectionByName = channel.unary_unary(
                '/qwak.vector.store.v1.collection.VectorCollectionService/GetCollectionByName',
                request_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByNameRequest.SerializeToString,
                response_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByNameResponse.FromString,
                )
        self.DeleteCollectionById = channel.unary_unary(
                '/qwak.vector.store.v1.collection.VectorCollectionService/DeleteCollectionById',
                request_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByIdRequest.SerializeToString,
                response_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByIdResponse.FromString,
                )
        self.DeleteCollectionByName = channel.unary_unary(
                '/qwak.vector.store.v1.collection.VectorCollectionService/DeleteCollectionByName',
                request_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByNameRequest.SerializeToString,
                response_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByNameResponse.FromString,
                )
        self.ListCollections = channel.unary_unary(
                '/qwak.vector.store.v1.collection.VectorCollectionService/ListCollections',
                request_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.ListCollectionsRequest.SerializeToString,
                response_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.ListCollectionsResponse.FromString,
                )
        self.GetCollectionCount = channel.unary_unary(
                '/qwak.vector.store.v1.collection.VectorCollectionService/GetCollectionCount',
                request_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionCountRequest.SerializeToString,
                response_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionCountResponse.FromString,
                )


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

    def CreateCollection(self, request, context):
        """Create a new vector collection
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def UpdateCollection(self, request, context):
        """Update an existing vector collection
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetCollectionById(self, request, context):
        """Get a collection by ID
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetCollectionByName(self, request, context):
        """Get a collection by name
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteCollectionById(self, request, context):
        """Delete a collection
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DeleteCollectionByName(self, request, context):
        """Unregister a collection
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def ListCollections(self, request, context):
        """List collections existing in the given environment
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def GetCollectionCount(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_VectorCollectionServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'CreateCollection': grpc.unary_unary_rpc_method_handler(
                    servicer.CreateCollection,
                    request_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.CreateCollectionRequest.FromString,
                    response_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.CreateCollectionResponse.SerializeToString,
            ),
            'UpdateCollection': grpc.unary_unary_rpc_method_handler(
                    servicer.UpdateCollection,
                    request_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.UpdateCollectionRequest.FromString,
                    response_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.UpdateCollectionResponse.SerializeToString,
            ),
            'GetCollectionById': grpc.unary_unary_rpc_method_handler(
                    servicer.GetCollectionById,
                    request_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByIdRequest.FromString,
                    response_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByIdResponse.SerializeToString,
            ),
            'GetCollectionByName': grpc.unary_unary_rpc_method_handler(
                    servicer.GetCollectionByName,
                    request_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByNameRequest.FromString,
                    response_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByNameResponse.SerializeToString,
            ),
            'DeleteCollectionById': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteCollectionById,
                    request_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByIdRequest.FromString,
                    response_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByIdResponse.SerializeToString,
            ),
            'DeleteCollectionByName': grpc.unary_unary_rpc_method_handler(
                    servicer.DeleteCollectionByName,
                    request_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByNameRequest.FromString,
                    response_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByNameResponse.SerializeToString,
            ),
            'ListCollections': grpc.unary_unary_rpc_method_handler(
                    servicer.ListCollections,
                    request_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.ListCollectionsRequest.FromString,
                    response_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.ListCollectionsResponse.SerializeToString,
            ),
            'GetCollectionCount': grpc.unary_unary_rpc_method_handler(
                    servicer.GetCollectionCount,
                    request_deserializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionCountRequest.FromString,
                    response_serializer=qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionCountResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'qwak.vector.store.v1.collection.VectorCollectionService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))


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

    @staticmethod
    def CreateCollection(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, '/qwak.vector.store.v1.collection.VectorCollectionService/CreateCollection',
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.CreateCollectionRequest.SerializeToString,
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.CreateCollectionResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def UpdateCollection(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, '/qwak.vector.store.v1.collection.VectorCollectionService/UpdateCollection',
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.UpdateCollectionRequest.SerializeToString,
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.UpdateCollectionResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetCollectionById(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, '/qwak.vector.store.v1.collection.VectorCollectionService/GetCollectionById',
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByIdRequest.SerializeToString,
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByIdResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetCollectionByName(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, '/qwak.vector.store.v1.collection.VectorCollectionService/GetCollectionByName',
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByNameRequest.SerializeToString,
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionByNameResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteCollectionById(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, '/qwak.vector.store.v1.collection.VectorCollectionService/DeleteCollectionById',
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByIdRequest.SerializeToString,
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByIdResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def DeleteCollectionByName(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, '/qwak.vector.store.v1.collection.VectorCollectionService/DeleteCollectionByName',
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByNameRequest.SerializeToString,
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.DeleteCollectionByNameResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def ListCollections(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, '/qwak.vector.store.v1.collection.VectorCollectionService/ListCollections',
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.ListCollectionsRequest.SerializeToString,
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.ListCollectionsResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)

    @staticmethod
    def GetCollectionCount(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, '/qwak.vector.store.v1.collection.VectorCollectionService/GetCollectionCount',
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionCountRequest.SerializeToString,
            qwak_dot_vectors_dot_v1_dot_collection_dot_collection__service__pb2.GetCollectionCountResponse.FromString,
            options, channel_credentials,
            insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
