"""Revoke message."""
from marshmallow import fields
from .....messaging.agent_message import AgentMessage, AgentMessageSchema
from .....messaging.valid import UUIDFour
from ..message_types import PROTOCOL_PACKAGE, REVOKE
HANDLER_CLASS = f"{PROTOCOL_PACKAGE}.handlers.revoke_handler.RevokeHandler"
[docs]class Revoke(AgentMessage):
"""Class representing revoke message."""
def __init__(self, *, thread_id: str, comment: str = None, **kwargs):
"""Initialize revoke message."""
super().__init__(**kwargs)
# TODO support please ack
self.thread_id = thread_id
self.comment = comment
[docs]class RevokeSchema(AgentMessageSchema):
"""Schema of Revoke message."""
# TODO support please ack
thread_id = fields.Str(
required=True,
description=(
"Thread ID of credential exchange resulting in this issued credential"
),
example=UUIDFour.EXAMPLE,
)
comment = fields.Str(
required=False,
description="Human readable information about revocation notification",
)