Passed
Push — master ( c2b6eb...8c3bb9 )
by Sébastien
09:25
created

ResetServices   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 21
Duplicated Lines 0 %

Test Coverage

Coverage 100%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 9
c 1
b 0
f 0
dl 0
loc 21
ccs 7
cts 7
cp 1
rs 10
wmc 2

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 4 1
A receive() 0 6 1
1
<?php
2
3
namespace Bdf\QueueBundle\Consumption\Receiver;
4
5
use Bdf\Queue\Consumer\DelegateHelper;
6
use Bdf\Queue\Consumer\ReceiverInterface;
7
use Bdf\Queue\Consumer\ConsumerInterface;
8
use Symfony\Component\HttpKernel\DependencyInjection\ServicesResetter;
9
10
/**
11
 * Reset all services registered on kernel.reset
12
 */
13
class ResetServices implements ReceiverInterface
14
{
15
    use DelegateHelper;
16
17
    /**
18
     * @var ServicesResetter
19
     */
20
    private $servicesResetter;
21
22 5
    public function __construct(ReceiverInterface $delegate, ServicesResetter $servicesResetter)
23
    {
24 5
        $this->delegate = $delegate;
25 5
        $this->servicesResetter = $servicesResetter;
26
    }
27
28 2
    public function receive($message, ConsumerInterface $consumer): void
29
    {
30
        try {
31 2
            $this->delegate->receive($message, $consumer);
32 2
        } finally {
33 2
            $this->servicesResetter->reset();
34
        }
35
    }
36
}
37