public function showException($exception, $messages = null, $messageType = 'error')
{
$messageArray = array();
if ($messages) {
foreach ($messages as $message) {
$this->flashSession->{$messageType}($message->getMessage());
$messageArray[] = $message->getMessage();
}
}
$logger = $this->getDI()->get('logException');
$logger->log(implode('', $messageArray) . "\n" . get_class($exception) . ":" . $exception->getMessage() . "\n" . " File=" . $exception->getFile() . "\n" . " Line=" . $exception->getLine() . "\n" . $exception->getTraceAsString());
//Not eva exception, keep throw
if (!$exception instanceof Exception\ExceptionInterface) {
throw $exception;
}
$this->response->setStatusCode($exception->getStatusCode(), $exception->getMessage());
$this->flashSession->{$messageType}($exception->getMessage());
return $this;
}