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

ResetServices::receive()   A

Complexity

Conditions 1
Paths 2

Size

Total Lines 6
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 4
CRAP Score 1

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 4
c 1
b 0
f 0
nc 2
nop 2
dl 0
loc 6
ccs 4
cts 4
cp 1
crap 1
rs 10
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