Example #1
0
 /**
  * Register routing.
  *
  * @param Router $router Router object.
  * @param string $option The component option name.
  *
  * @throws \LogicException
  * @return  Router Registered router.
  */
 public static function registerRouting(Router $router, $option)
 {
     // Don't register twice.
     if (self::$registered) {
         return $router;
     }
     // Register routers.
     $maps = static::getRouting($option);
     foreach ((array) $maps as $name => $map) {
         if (empty($map->pattern) || empty($map->view)) {
             // throw new \LogicException('Are you kidding me? no map, no run! Add pattern and view to: ' . $name);
         }
         $buildHandler = !empty($map->buildHandler) ? $map->buildHandler : '';
         $parseHandler = !empty($map->parseHandler) ? $map->parseHandler : '';
         $router->register($name, $map->pattern, $map->view, $buildHandler, $parseHandler);
     }
     return $router;
 }