class_docstr: Stores and handles metadata routing for a router object.
  
  This class is used by router objects to store and handle metadata routing.
  Routing information is stored as a dictionary of the form ``{"object_name":
  RouteMappingPair(method_mapping, routing_info)}``, where ``method_mapping``
  is an instance of :class:`~sklearn.utils.metadata_routing.MethodMapping` and
  ``routing_info`` is either a
  :class:`~utils.metadata_routing.MetadataRequest` or a
  :class:`~utils.metadata_routing.MetadataRouter` instance.
  
  .. versionadded:: 1.3
  
  Parameters
  ----------
  owner : str
      The name of the object to which these requests belong.
code: def __init__(self, owner):
      self._route_mappings = dict()
      # `_self_request` is used if the router is also a consumer.
      # _self_request, (added using `add_self_request()`) is treated
      # differently from the other objects which are stored in
      # _route_mappings.
      self._self_request = None
      self.owner = owner
  
imports: import inspect
  from collections import namedtuple
  from copy import deepcopy
  from typing import Optional, Union
  from warnings import warn
  from ..None import get_config
  from ..exceptions import UnsetMetadataPassedError
  from ._bunch import Bunch
label_desc: Use image node_id 1 to create a new MetadataRouter object  with example: obj = MetadataRouter(owner)