docs: def _CreateRouter(self, router_cls, params=None):
      """Creates a router with a given name and params."""
      if not router_cls.params_type and params:
        raise ApiCallRouterDoesNotExpectParameters(
            "%s is not configurable" % router_cls)
  
      rdf_params = None
      if router_cls.params_type:
        rdf_params = router_cls.params_type()
        if params:
          rdf_params.FromDict(params)
  
      return router_cls(params=rdf_params)