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

from capiscio_mcp._proto.gen.capiscio.v1 import did_pb2 as capiscio_dot_v1_dot_did__pb2


class DIDServiceStub(object):
    """DIDService handles did:web operations
    """

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

        Args:
            channel: A grpc.Channel.
        """
        self.Parse = channel.unary_unary(
                '/capiscio.v1.DIDService/Parse',
                request_serializer=capiscio_dot_v1_dot_did__pb2.ParseDIDRequest.SerializeToString,
                response_deserializer=capiscio_dot_v1_dot_did__pb2.ParseDIDResponse.FromString,
                _registered_method=True)
        self.NewAgentDID = channel.unary_unary(
                '/capiscio.v1.DIDService/NewAgentDID',
                request_serializer=capiscio_dot_v1_dot_did__pb2.NewAgentDIDRequest.SerializeToString,
                response_deserializer=capiscio_dot_v1_dot_did__pb2.NewAgentDIDResponse.FromString,
                _registered_method=True)
        self.NewCapiscIOAgentDID = channel.unary_unary(
                '/capiscio.v1.DIDService/NewCapiscIOAgentDID',
                request_serializer=capiscio_dot_v1_dot_did__pb2.NewCapiscIOAgentDIDRequest.SerializeToString,
                response_deserializer=capiscio_dot_v1_dot_did__pb2.NewAgentDIDResponse.FromString,
                _registered_method=True)
        self.DocumentURL = channel.unary_unary(
                '/capiscio.v1.DIDService/DocumentURL',
                request_serializer=capiscio_dot_v1_dot_did__pb2.DocumentURLRequest.SerializeToString,
                response_deserializer=capiscio_dot_v1_dot_did__pb2.DocumentURLResponse.FromString,
                _registered_method=True)
        self.IsAgentDID = channel.unary_unary(
                '/capiscio.v1.DIDService/IsAgentDID',
                request_serializer=capiscio_dot_v1_dot_did__pb2.IsAgentDIDRequest.SerializeToString,
                response_deserializer=capiscio_dot_v1_dot_did__pb2.IsAgentDIDResponse.FromString,
                _registered_method=True)


class DIDServiceServicer(object):
    """DIDService handles did:web operations
    """

    def Parse(self, request, context):
        """Parse a did:web identifier
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def NewAgentDID(self, request, context):
        """Construct a new agent DID
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def NewCapiscIOAgentDID(self, request, context):
        """Construct a Capiscio registry DID
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def DocumentURL(self, request, context):
        """Get the document URL for a DID
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')

    def IsAgentDID(self, request, context):
        """Check if a DID is an agent DID
        """
        context.set_code(grpc.StatusCode.UNIMPLEMENTED)
        context.set_details('Method not implemented!')
        raise NotImplementedError('Method not implemented!')


def add_DIDServiceServicer_to_server(servicer, server):
    rpc_method_handlers = {
            'Parse': grpc.unary_unary_rpc_method_handler(
                    servicer.Parse,
                    request_deserializer=capiscio_dot_v1_dot_did__pb2.ParseDIDRequest.FromString,
                    response_serializer=capiscio_dot_v1_dot_did__pb2.ParseDIDResponse.SerializeToString,
            ),
            'NewAgentDID': grpc.unary_unary_rpc_method_handler(
                    servicer.NewAgentDID,
                    request_deserializer=capiscio_dot_v1_dot_did__pb2.NewAgentDIDRequest.FromString,
                    response_serializer=capiscio_dot_v1_dot_did__pb2.NewAgentDIDResponse.SerializeToString,
            ),
            'NewCapiscIOAgentDID': grpc.unary_unary_rpc_method_handler(
                    servicer.NewCapiscIOAgentDID,
                    request_deserializer=capiscio_dot_v1_dot_did__pb2.NewCapiscIOAgentDIDRequest.FromString,
                    response_serializer=capiscio_dot_v1_dot_did__pb2.NewAgentDIDResponse.SerializeToString,
            ),
            'DocumentURL': grpc.unary_unary_rpc_method_handler(
                    servicer.DocumentURL,
                    request_deserializer=capiscio_dot_v1_dot_did__pb2.DocumentURLRequest.FromString,
                    response_serializer=capiscio_dot_v1_dot_did__pb2.DocumentURLResponse.SerializeToString,
            ),
            'IsAgentDID': grpc.unary_unary_rpc_method_handler(
                    servicer.IsAgentDID,
                    request_deserializer=capiscio_dot_v1_dot_did__pb2.IsAgentDIDRequest.FromString,
                    response_serializer=capiscio_dot_v1_dot_did__pb2.IsAgentDIDResponse.SerializeToString,
            ),
    }
    generic_handler = grpc.method_handlers_generic_handler(
            'capiscio.v1.DIDService', rpc_method_handlers)
    server.add_generic_rpc_handlers((generic_handler,))
    server.add_registered_method_handlers('capiscio.v1.DIDService', rpc_method_handlers)


 # This class is part of an EXPERIMENTAL API.
class DIDService(object):
    """DIDService handles did:web operations
    """

    @staticmethod
    def Parse(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,
            '/capiscio.v1.DIDService/Parse',
            capiscio_dot_v1_dot_did__pb2.ParseDIDRequest.SerializeToString,
            capiscio_dot_v1_dot_did__pb2.ParseDIDResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def NewAgentDID(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,
            '/capiscio.v1.DIDService/NewAgentDID',
            capiscio_dot_v1_dot_did__pb2.NewAgentDIDRequest.SerializeToString,
            capiscio_dot_v1_dot_did__pb2.NewAgentDIDResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def NewCapiscIOAgentDID(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,
            '/capiscio.v1.DIDService/NewCapiscIOAgentDID',
            capiscio_dot_v1_dot_did__pb2.NewCapiscIOAgentDIDRequest.SerializeToString,
            capiscio_dot_v1_dot_did__pb2.NewAgentDIDResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def DocumentURL(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,
            '/capiscio.v1.DIDService/DocumentURL',
            capiscio_dot_v1_dot_did__pb2.DocumentURLRequest.SerializeToString,
            capiscio_dot_v1_dot_did__pb2.DocumentURLResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)

    @staticmethod
    def IsAgentDID(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,
            '/capiscio.v1.DIDService/IsAgentDID',
            capiscio_dot_v1_dot_did__pb2.IsAgentDIDRequest.SerializeToString,
            capiscio_dot_v1_dot_did__pb2.IsAgentDIDResponse.FromString,
            options,
            channel_credentials,
            insecure,
            call_credentials,
            compression,
            wait_for_ready,
            timeout,
            metadata,
            _registered_method=True)
