"""Request to update forwarding routes."""
from typing import Sequence
from marshmallow import fields
from ...agent_message import AgentMessage, AgentMessageSchema
from ..message_types import ROUTE_UPDATE_REQUEST
from ..models.route_update import RouteUpdate, RouteUpdateSchema
HANDLER_CLASS = (
"aries_cloudagent.messaging.routing.handlers"
+ ".route_update_request_handler.RouteUpdateRequestHandler"
)
[docs]class RouteUpdateRequest(AgentMessage):
"""Request to existing routes with a routing agent."""
def __init__(self, *, updates: Sequence[RouteUpdate] = None, **kwargs):
"""
Initialize a RouteUpdateRequest message instance.
Args:
updates: A list of route updates
"""
super(RouteUpdateRequest, self).__init__(**kwargs)
self.updates = updates or []
[docs]class RouteUpdateRequestSchema(AgentMessageSchema):
"""RouteUpdateRequest message schema used in serialization/deserialization."""
updates = fields.List(fields.Nested(RouteUpdateSchema()), required=True)