1 | <?php |
||
10 | class ContentBasedErrorResponseGenerator implements ErrorResponseGeneratorInterface |
||
11 | { |
||
12 | /** |
||
13 | * @deprecated Inject the default content type to be used while creating this class |
||
14 | */ |
||
15 | const DEFAULT_CONTENT = 'text/html'; |
||
16 | |||
17 | /** |
||
18 | * @var ErrorResponseGeneratorManagerInterface |
||
19 | */ |
||
20 | private $errorHandlerManager; |
||
21 | /** |
||
22 | * @var LoggerInterface |
||
23 | */ |
||
24 | private $logger; |
||
25 | /** |
||
26 | * @var LogMessageBuilderInterface |
||
27 | */ |
||
28 | private $logMessageBuilder; |
||
29 | /** |
||
30 | * @var string |
||
31 | */ |
||
32 | private $defaultContentType; |
||
33 | |||
34 | /** |
||
35 | * ContentBasedErrorResponseGenerator constructor. |
||
36 | * @param ErrorResponseGeneratorManagerInterface|ErrorResponseGeneratorManager $errorHandlerManager |
||
37 | * @param LoggerInterface $logger |
||
38 | * @param LogMessageBuilderInterface $logMessageBuilder |
||
39 | * @param string $defaultContentType |
||
40 | */ |
||
41 | 7 | public function __construct( |
|
52 | |||
53 | /** |
||
54 | * Final handler for an application. |
||
55 | * |
||
56 | * @param \Throwable|\Exception $e |
||
57 | * @param Request $request |
||
58 | * @param Response $response |
||
59 | * @return Response |
||
60 | */ |
||
61 | 5 | public function __invoke($e, Request $request, Response $response) |
|
68 | |||
69 | /** |
||
70 | * Tries to resolve |
||
71 | * |
||
72 | * @param Request $request |
||
73 | * @return callable |
||
74 | * @throws InvalidArgumentException |
||
75 | */ |
||
76 | 5 | protected function resolveErrorHandlerFromAcceptHeader(Request $request) |
|
103 | } |
||
104 |
This check looks at variables that have been passed in as parameters and are passed out again to other methods.
If the outgoing method call has stricter type requirements than the method itself, an issue is raised.
An additional type check may prevent trouble.