File tree Expand file tree Collapse file tree 4 files changed +43
-47
lines changed Expand file tree Collapse file tree 4 files changed +43
-47
lines changed Load Diff This file was deleted.
Original file line number Diff line number Diff line change 12
12
<call method =" setAnnotationReader" >
13
13
<argument type =" service" id =" .stof_doctrine_extensions.reader" on-invalid =" ignore" />
14
14
</call >
15
- </service >
16
-
17
- <service id =" stof_doctrine_extensions.event_listener.ip_trace" class =" Stof\DoctrineExtensionsBundle\EventListener\IpTraceListener" public =" false" >
18
- <argument type =" service" id =" stof_doctrine_extensions.listener.ip_traceable" />
19
- <tag name =" kernel.event_subscriber" />
15
+ <call method =" setIpAddressProvider" >
16
+ <argument type =" service" id =" stof_doctrine_extensions.tool.ip_address_provider" />
17
+ </call >
20
18
</service >
21
19
</services >
22
20
</container >
Original file line number Diff line number Diff line change 9
9
<argument type =" service" id =" security.token_storage" on-invalid =" null" />
10
10
<argument type =" service" id =" security.authorization_checker" on-invalid =" null" />
11
11
</service >
12
+
13
+ <service id =" stof_doctrine_extensions.tool.ip_address_provider" class =" Stof\DoctrineExtensionsBundle\Tool\RequestStackIpAddressProvider" public =" false" >
14
+ <argument type =" service" id =" request_stack" on-invalid =" null" />
15
+ </service >
12
16
</services >
13
17
</container >
Original file line number Diff line number Diff line change
1
+ <?php
2
+
3
+ namespace Stof \DoctrineExtensionsBundle \Tool ;
4
+
5
+ use Gedmo \Tool \IpAddressProviderInterface ;
6
+ use Symfony \Component \HttpFoundation \RequestStack ;
7
+
8
+ /**
9
+ * Provides an IP address for the extensions using an IP address reference.
10
+ *
11
+ * @internal
12
+ */
13
+ final class RequestStackIpAddressProvider implements IpAddressProviderInterface
14
+ {
15
+ private ?RequestStack $ requestStack ;
16
+
17
+ public function __construct (?RequestStack $ requestStack )
18
+ {
19
+ $ this ->requestStack = $ requestStack ;
20
+ }
21
+
22
+ public function getAddress (): ?string
23
+ {
24
+ if (null === $ this ->requestStack ) {
25
+ return null ;
26
+ }
27
+
28
+ $ request = $ this ->requestStack ->getCurrentRequest ();
29
+
30
+ if (null === $ request ) {
31
+ return null ;
32
+ }
33
+
34
+ return $ request ->getClientIp ();
35
+ }
36
+ }
You can’t perform that action at this time.
0 commit comments