public function run(Request $request, Kernel $kernel) { $router = $kernel->getRouter(); try { $action = $router->route($request); if ($action instanceof StatefulAction) { /** @var StatefulAction $action */ $action->setState($this->getState()); } if ($action instanceof DoctrineAwareAction) { /** @var DoctrineAwareAction $action */ $action->setEntityManager($kernel->getEntityManager()); } if ($action instanceof AuthenticatedAction) { /** @var AuthenticatedAction $action */ $kernel->getAuthenticator()->authenticate($request, $action); } if ($action instanceof LocalizedAction) { /** @var LocalizedAction $action */ $action->setTranslator($kernel->getTranslator($request)); } /** @var Action $action */ $responder = $action->execute($request, $router); } catch (UnknownRouteException $e) { $responder = $kernel->getExceptionHandler()->handle404($e); } catch (AccessControlException $e) { $responder = $kernel->getExceptionHandler()->handle401($e); } catch (HorsesException $e) { $responder = $kernel->getExceptionHandler()->handleGeneric($e, 400); } catch (Exception $e) { $responder = $kernel->getExceptionHandler()->handleGeneric($e, 500); } $responder->output($router); }
public function testGetTranslator() { $this->assertInstanceOf('\\horses\\i18n\\Translator', $this->kernel->getTranslator($this->getBasicMock('\\horses\\Request'))); }