Passed
Push — master ( b3236d...aac68f )
by Alexander
04:13
created

ServiceProxy::afterCall()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 4
dl 0
loc 4
ccs 3
cts 3
cp 1
crap 1
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Yiisoft\Yii\Debug\Proxy;
6
7
use Yiisoft\Proxy\ObjectProxy;
8
9
class ServiceProxy extends ObjectProxy
10
{
11
    use ProxyLogTrait;
12
13
    private string $service;
14
15 4
    public function __construct(
16
        string $service,
17
        object $instance,
18
        ContainerProxyConfig $config
19
    ) {
20 4
        $this->service = $service;
21 4
        $this->config = $config;
22 4
        parent::__construct($instance);
23
    }
24
25 1
    protected function afterCall(string $methodName, array $arguments, mixed $result, float $timeStart): mixed
26
    {
27 1
        $this->logProxy($this->service, $this->getInstance(), $methodName, $arguments, $result, $timeStart);
28 1
        return $result;
29
    }
30
31
    protected function getNewStaticInstance(object $instance): ObjectProxy
32
    {
33
        return new static($this->service, $instance, $this->config);
34
    }
35
36 1
    protected function getService(): string
37
    {
38 1
        return $this->service;
39
    }
40
41
    protected function getConfig(): ContainerProxyConfig
42
    {
43
        return $this->config;
44
    }
45
}
46