/** * @param string $sActionName * @param \Exception $oException * * @return array */ public function ExceptionResponse($sActionName, $oException) { $iErrorCode = null; $sErrorMessage = null; $sErrorMessageAdditional = null; if ($oException instanceof \RainLoop\Exceptions\ClientException) { $iErrorCode = $oException->getCode(); $sErrorMessage = null; if ($iErrorCode === \RainLoop\Notifications::ClientViewError) { $sErrorMessage = $oException->getMessage(); } $sErrorMessageAdditional = $oException->getAdditionalMessage(); if (empty($sErrorMessageAdditional)) { $sErrorMessageAdditional = null; } } else { $iErrorCode = \RainLoop\Notifications::UnknownError; $sErrorMessage = $oException->getCode() . ' - ' . $oException->getMessage(); } $oPrevious = $oException->getPrevious(); if ($oPrevious) { $this->Logger()->WriteException($oPrevious); } else { $this->Logger()->WriteException($oException); } return $this->FalseResponse($sActionName, $iErrorCode, $sErrorMessage, $sErrorMessageAdditional); }