comparison vendor/symfony/http-kernel/DataCollector/ExceptionDataCollector.php @ 0:4c8ae668cc8c

Initial import (non-working)
author Chris Cannam
date Wed, 29 Nov 2017 16:09:58 +0000
parents
children 1fec387a4317
comparison
equal deleted inserted replaced
-1:000000000000 0:4c8ae668cc8c
1 <?php
2
3 /*
4 * This file is part of the Symfony package.
5 *
6 * (c) Fabien Potencier <fabien@symfony.com>
7 *
8 * For the full copyright and license information, please view the LICENSE
9 * file that was distributed with this source code.
10 */
11
12 namespace Symfony\Component\HttpKernel\DataCollector;
13
14 use Symfony\Component\Debug\Exception\FlattenException;
15 use Symfony\Component\HttpFoundation\Request;
16 use Symfony\Component\HttpFoundation\Response;
17
18 /**
19 * ExceptionDataCollector.
20 *
21 * @author Fabien Potencier <fabien@symfony.com>
22 */
23 class ExceptionDataCollector extends DataCollector
24 {
25 /**
26 * {@inheritdoc}
27 */
28 public function collect(Request $request, Response $response, \Exception $exception = null)
29 {
30 if (null !== $exception) {
31 $this->data = array(
32 'exception' => FlattenException::create($exception),
33 );
34 }
35 }
36
37 /**
38 * Checks if the exception is not null.
39 *
40 * @return bool true if the exception is not null, false otherwise
41 */
42 public function hasException()
43 {
44 return isset($this->data['exception']);
45 }
46
47 /**
48 * Gets the exception.
49 *
50 * @return \Exception The exception
51 */
52 public function getException()
53 {
54 return $this->data['exception'];
55 }
56
57 /**
58 * Gets the exception message.
59 *
60 * @return string The exception message
61 */
62 public function getMessage()
63 {
64 return $this->data['exception']->getMessage();
65 }
66
67 /**
68 * Gets the exception code.
69 *
70 * @return int The exception code
71 */
72 public function getCode()
73 {
74 return $this->data['exception']->getCode();
75 }
76
77 /**
78 * Gets the status code.
79 *
80 * @return int The status code
81 */
82 public function getStatusCode()
83 {
84 return $this->data['exception']->getStatusCode();
85 }
86
87 /**
88 * Gets the exception trace.
89 *
90 * @return array The exception trace
91 */
92 public function getTrace()
93 {
94 return $this->data['exception']->getTrace();
95 }
96
97 /**
98 * {@inheritdoc}
99 */
100 public function getName()
101 {
102 return 'exception';
103 }
104 }