44
55namespace Sentry \SentryBundle \Integration ;
66
7+ use Http \Discovery \Psr17FactoryDiscovery ;
78use Psr \Http \Message \ServerRequestInterface ;
89use Sentry \Integration \RequestFetcherInterface ;
10+ use Symfony \Bridge \PsrHttpMessage \Factory \PsrHttpFactory ;
911use Symfony \Bridge \PsrHttpMessage \HttpMessageFactoryInterface ;
1012use Symfony \Component \HttpFoundation \RequestStack ;
1113
@@ -29,13 +31,18 @@ final class RequestFetcher implements RequestFetcherInterface
2931 /**
3032 * Class constructor.
3133 *
32- * @param RequestStack $requestStack The request stack
33- * @param HttpMessageFactoryInterface $httpMessageFactory The factory to convert Symfony requests to PSR-7 requests
34+ * @param RequestStack $requestStack The request stack
35+ * @param HttpMessageFactoryInterface|null $httpMessageFactory The factory to convert Symfony requests to PSR-7 requests
3436 */
35- public function __construct (RequestStack $ requestStack , HttpMessageFactoryInterface $ httpMessageFactory )
37+ public function __construct (RequestStack $ requestStack , ? HttpMessageFactoryInterface $ httpMessageFactory = null )
3638 {
3739 $ this ->requestStack = $ requestStack ;
38- $ this ->httpMessageFactory = $ httpMessageFactory ;
40+ $ this ->httpMessageFactory = $ httpMessageFactory ?? new PsrHttpFactory (
41+ Psr17FactoryDiscovery::findServerRequestFactory (),
42+ Psr17FactoryDiscovery::findStreamFactory (),
43+ Psr17FactoryDiscovery::findUploadedFileFactory (),
44+ Psr17FactoryDiscovery::findResponseFactory ()
45+ );
3946 }
4047
4148 /**
0 commit comments