Passed
Pull Request — master (#21)
by
unknown
02:25
created

ProxyTrait   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Test Coverage

Coverage 22.22%

Importance

Changes 4
Bugs 0 Features 0
Metric Value
eloc 7
c 4
b 0
f 0
dl 0
loc 23
ccs 2
cts 9
cp 0.2222
rs 10
wmc 5

4 Methods

Rating   Name   Duplication   Size   Complexity  
A getCurrentResultStatus() 0 3 2
A repeatError() 0 4 1
A getCurrentError() 0 3 1
A resetCurrentError() 0 3 1
1
<?php
2
3
declare(strict_types=1);
4
5
namespace Yiisoft\Proxy;
6
7
use Throwable;
8
9
trait ProxyTrait
10
{
11
    private ?object $currentError = null;
12
13
    protected function getCurrentResultStatus(): string
14
    {
15
        return $this->currentError === null ? 'success' : 'failed';
16
    }
17
18
    protected function repeatError(Throwable $error): void
19
    {
20
        $this->currentError = $error;
21
        throw $error;
22
    }
23
24 1
    protected function resetCurrentError(): void
25
    {
26 1
        $this->currentError = null;
27
    }
28
29
    protected function getCurrentError(): ?object
30
    {
31
        return $this->currentError;
32
    }
33
}
34