public static function register($controller) { if (!class_exists($controller) || !is_subclass_of($controller, '\\Wave\\Controller')) { throw new \Exception("Controller {$controller} must be an instance of \\Wave\\Controller"); } self::$_controller = "{$controller}.execute"; set_exception_handler(array('\\Wave\\Exception', 'handle')); Hook::registerHandler('router.before_routing', function (Router $router) { if (Exception::$_response_method === null) { Exception::$_response_method = $router->getRequest()->getFormat(); } Exception::setRequest($router->getRequest()); }); }