Skip to content

Commit e90c809

Browse files
committed
Drop class_alias uses to fix #307
1 parent ff7de7b commit e90c809

File tree

2 files changed

+54
-19
lines changed

2 files changed

+54
-19
lines changed

src/EventListener/RequestListener.php

Lines changed: 40 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,21 +5,14 @@
55
use Sentry\SentrySdk;
66
use Sentry\State\HubInterface;
77
use Sentry\State\Scope;
8+
use Symfony\Component\HttpFoundation\Request;
89
use Symfony\Component\HttpKernel\Event\ControllerEvent;
910
use Symfony\Component\HttpKernel\Event\FilterControllerEvent;
1011
use Symfony\Component\HttpKernel\Event\GetResponseEvent;
1112
use Symfony\Component\HttpKernel\Event\RequestEvent;
1213
use Symfony\Component\Security\Core\Authentication\Token\Storage\TokenStorageInterface;
1314
use Symfony\Component\Security\Core\User\UserInterface;
1415

15-
if (! class_exists(RequestEvent::class)) {
16-
class_alias(GetResponseEvent::class, RequestEvent::class);
17-
}
18-
19-
if (! class_exists(ControllerEvent::class)) {
20-
class_alias(FilterControllerEvent::class, ControllerEvent::class);
21-
}
22-
2316
/**
2417
* Class RequestListener
2518
* @package Sentry\SentryBundle\EventListener
@@ -50,12 +43,29 @@ public function __construct(
5043
*
5144
* @param RequestEvent $event
5245
*/
53-
public function onKernelRequest(RequestEvent $event): void
46+
public function onRequest(RequestEvent $event): void
47+
{
48+
if (! $event->isMasterRequest()) {
49+
return;
50+
}
51+
52+
$this->handleRequestEvent($event->getRequest());
53+
}
54+
55+
/**
56+
* BC layer for SF < 4.3
57+
*/
58+
public function onKernelRequest(GetResponseEvent $event): void
5459
{
5560
if (! $event->isMasterRequest()) {
5661
return;
5762
}
5863

64+
$this->handleRequestEvent($event->getRequest());
65+
}
66+
67+
private function handleRequestEvent(Request $request): void
68+
{
5969
$currentClient = SentrySdk::getCurrentHub()->getClient();
6070
if (null === $currentClient || ! $currentClient->getOptions()->shouldSendDefaultPii()) {
6171
return;
@@ -77,25 +87,42 @@ public function onKernelRequest(RequestEvent $event): void
7787
$userData = $this->getUserData($token->getUser());
7888
}
7989

80-
$userData['ip_address'] = $event->getRequest()->getClientIp();
90+
$userData['ip_address'] = $request->getClientIp();
8191

8292
SentrySdk::getCurrentHub()
8393
->configureScope(function (Scope $scope) use ($userData): void {
8494
$scope->setUser($userData, true);
8595
});
8696
}
8797

88-
public function onKernelController(ControllerEvent $event): void
98+
public function onController(ControllerEvent $event): void
99+
{
100+
if (! $event->isMasterRequest()) {
101+
return;
102+
}
103+
104+
$this->handleControllerEvent($event->getRequest());
105+
}
106+
107+
/**
108+
* BC layer for SF < 4.3
109+
*/
110+
public function onKernelController(FilterControllerEvent $event): void
89111
{
90112
if (! $event->isMasterRequest()) {
91113
return;
92114
}
93115

94-
if (! $event->getRequest()->attributes->has('_route')) {
116+
$this->handleControllerEvent($event->getRequest());
117+
}
118+
119+
private function handleControllerEvent(Request $request): void
120+
{
121+
if (! $request->attributes->has('_route')) {
95122
return;
96123
}
97124

98-
$matchedRoute = (string) $event->getRequest()->attributes->get('_route');
125+
$matchedRoute = (string)$request->attributes->get('_route');
99126

100127
SentrySdk::getCurrentHub()
101128
->configureScope(function (Scope $scope) use ($matchedRoute): void {

src/EventListener/SubRequestListener.php

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,18 +7,26 @@
77
use Symfony\Component\HttpKernel\Event\GetResponseEvent;
88
use Symfony\Component\HttpKernel\Event\RequestEvent;
99

10-
if (! class_exists(RequestEvent::class)) {
11-
class_alias(GetResponseEvent::class, RequestEvent::class);
12-
}
13-
1410
final class SubRequestListener
1511
{
1612
/**
1713
* Pushes a new {@see Scope} for each SubRequest
1814
*
1915
* @param RequestEvent $event
2016
*/
21-
public function onKernelRequest(RequestEvent $event): void
17+
public function onRequest(RequestEvent $event): void
18+
{
19+
if ($event->isMasterRequest()) {
20+
return;
21+
}
22+
23+
SentrySdk::getCurrentHub()->pushScope();
24+
}
25+
26+
/**
27+
* BC layer for SF < 4.3
28+
*/
29+
public function onKernelRequest(GetResponseEvent $event): void
2230
{
2331
if ($event->isMasterRequest()) {
2432
return;
@@ -32,7 +40,7 @@ public function onKernelRequest(RequestEvent $event): void
3240
*
3341
* @param FinishRequestEvent $event
3442
*/
35-
public function onKernelFinishRequest(FinishRequestEvent $event): void
43+
public function onFinishRequest(FinishRequestEvent $event): void
3644
{
3745
if ($event->isMasterRequest()) {
3846
return;

0 commit comments

Comments
 (0)