public function insertPrevious($name, $object) { $previous = new self($name, $object); $previous->setNext($this); if ($this->isFirst()) { $previous->setPrevious(null); } else { $this->previous->setNext($previous); $previous->setPrevious($this->previous); } $this->setPrevious($previous); return $this; }
public static function create(\Exception $exception, $statusCode = null, array $headers = array()) { $e = new self(); $e->setMessage($exception->getMessage()); $e->setCode($exception->getCode()); if (null === $statusCode) { $statusCode = 500; } $e->setStatusCode($statusCode); $e->setHeaders($headers); $e->setTraceFromException($exception); $e->setClass(get_class($exception)); $e->setFile($exception->getFile()); $e->setLine($exception->getLine()); if ($exception->getPrevious()) { $e->setPrevious(self::create($exception->getPrevious())); } return $e; }