/**
  * {@inheritdoc}
  */
 public function execute(\Exception $exception)
 {
     error_log($exception->getMessage() . " " . $exception->getFile() . "(" . $exception->getLine() . ")");
     if (!$this->environment->isDebug()) {
         return;
     }
     $presenter = new HTTPErrorPresenter($this->environment);
     $response = new Response();
     $response->setContent($exception);
     $request = new EmptyRequest('', null);
     $presenter->render($request, $response);
 }
Beispiel #2
0
 /**
  * Support status code 4XX-5XX.
  *
  * @param Request $request
  * @param Response $response
  */
 private function displayError(Request $request, Response $response)
 {
     $exception = $response->getContent();
     $data = array('statusCode' => $response->getStatusCode(), 'message' => $exception->getMessage(), 'exception' => get_class($exception), 'file' => $exception->getFile(), 'line' => $exception->getLine());
     if ($this->environment->isDebug()) {
         echo $this->twig->render('error.twig', $data);
     } else {
         echo $this->twig->render($response->getStatusCode() . '.twig');
     }
 }
 /**
  *
  * @param Environment $environment
  * @param EventManager $eventManager
  * @param string $driver
  * @param string $username
  * @param string $password
  * @param string $dbname
  * @param string $host
  * @param int $port
  */
 public function __construct(Environment $environment, EventManager $eventManager, $driver, $username, $password, $dbname, $host, $port)
 {
     $paths = array();
     $eventHandler = new EventHandler($eventManager);
     $dbParams = array('driver' => $driver, 'user' => $username, 'password' => $password, 'dbname' => $dbname, 'host' => $host, 'charset' => 'utf8');
     $config = Setup::createAnnotationMetadataConfiguration($paths, $environment->isDebug(), $environment->getCachePath());
     $this->entityManager = EntityManager::create($dbParams, $config);
     $this->entityManager->getEventManager()->addEventListener(array('onFlush'), $eventHandler);
     $this->entityManager->getEventManager()->addEventListener(array('postFlush'), $eventHandler);
 }