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

ProxyTrait   A

Complexity

Total Complexity 5

Size/Duplication

Total Lines 27
Duplicated Lines 0 %

Test Coverage

Coverage 18.18%

Importance

Changes 5
Bugs 0 Features 0
Metric Value
eloc 9
c 5
b 0
f 0
dl 0
loc 27
ccs 2
cts 11
cp 0.1818
rs 10
wmc 5

4 Methods

Rating   Name   Duplication   Size   Complexity  
A repeatError() 0 4 1
A getCurrentError() 0 3 1
A getCurrentResultStatus() 0 7 2
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
        if ($this->currentError === null) {
16
            return 'success';
17
        }
18
19
        return 'failed';
20
    }
21
22
    protected function repeatError(Throwable $error): void
23
    {
24
        $this->currentError = $error;
25
        throw $error;
26
    }
27
28 1
    protected function resetCurrentError(): void
29
    {
30 1
        $this->currentError = null;
31
    }
32
33
    protected function getCurrentError(): ?object
34
    {
35
        return $this->currentError;
36
    }
37
}
38