public static function getRoutesTableCache($profile) { $table = Cache::load(self::getCacheName($profile, 'table')); if ($table == null) { $table = Cache::load(self::getCacheName('default', 'table')); } if (!is_array($table)) { throw new RoutingException("Could not load routes table for profile: {$profile} nor default profile"); } return $table; }
public static function generate() { $reflector = new Wave\Reflector(Wave\Config::get('wave')->path->controllers); $reflected_options = $reflector->execute(); $all_actions = self::buildRoutes($reflected_options); foreach ($all_actions as $profile => $actions) { $route_node = new Node(); foreach ($actions as $action) { foreach ($action->getRoutes() as $route) { $route_node->addChild($route, $action); } } Wave\Cache::store(Router::getCacheName($profile, 'table'), $actions); Wave\Cache::store(Router::getCacheName($profile, 'tree'), $route_node); } }