public final function exceptionHandler()

in provider/core/server/BaseServer.php [617:660]


	public final function exceptionHandler($exception)
	{
		$exceptionHash = array(
	    	'className' => 'FSOF_Provider_Exception',
	        'message' => $exception->getMessage(),
	        'code' => $exception->getCode(),
	        'file' => $exception->getFile(),
	        'line' => $exception->getLine(),
	        'trace' => array(),
	    );
	
		$traceItems = $exception->getTrace();
	    foreach ($traceItems as $traceItem) 
	    {
	        $traceHash = array(
	            'file' => isset($traceItem['file']) ? $traceItem['file'] : 'null',
	            'line' => isset($traceItem['line']) ? $traceItem['line'] : 'null',
	            'function' => isset($traceItem['function']) ? $traceItem['function'] : 'null',
	            'args' => array(),
	        );
	
	        if (!empty($traceItem['class'])) 
	        {
	            $traceHash['class'] = $traceItem['class'];
	        }
	
	        if (!empty($traceItem['type'])) 
	        {
	            $traceHash['type'] = $traceItem['type'];
	        }
	
	        if (!empty($traceItem['args'])) 
	        {
	            foreach ($traceItem['args'] as $argsItem) 
	            {
	                $traceHash['args'][] = \var_export($argsItem, true);
	            }
	        }
	
	        $exceptionHash['trace'][] = $traceHash;
	    }

        $this->logger->error(print_r($exceptionHash, true));
	}