AbstractGeneratedByMiddleware::getServerId()   A
last analyzed

Complexity

Conditions 5
Paths 9

Size

Total Lines 23
Code Lines 13

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 11
CRAP Score 5.0909

Importance

Changes 0
Metric Value
cc 5
eloc 13
nc 9
nop 1
dl 0
loc 23
ccs 11
cts 13
cp 0.8462
crap 5.0909
rs 9.5222
c 0
b 0
f 0
1
<?php
2
declare(strict_types=1);
3
4
namespace Ctw\Middleware\GeneratedByMiddleware;
5
6
use Ctw\Middleware\AbstractMiddleware;
7
use Exception;
8
use Ramsey\Uuid\Uuid;
9
10
abstract class AbstractGeneratedByMiddleware extends AbstractMiddleware
11
{
12 4
    protected function getServerId(array $serverParams): string
13
    {
14 4
        $name = '';
15
16 4
        foreach (['SERVER_ADDR', 'SERVER_NAME'] as $key) {
17 4
            if (!isset($serverParams[$key])) {
18 2
                continue;
19
            }
20 2
            $value = (string) $serverParams[$key];
21 2
            $name  .= strtolower(trim($value));
22
        }
23
24 4
        if ('' === $name) {
25 2
            return '';
26
        }
27
28
        try {
29 2
            $ret = Uuid::uuid5(Uuid::NAMESPACE_URL, $name)->toString();
30
        } catch (Exception) {
31
            $ret = '';
32
        }
33
34 2
        return $ret;
35
    }
36
}
37