WifiAccess   A
last analyzed

Complexity

Total Complexity 6

Size/Duplication

Total Lines 34
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 10
dl 0
loc 34
rs 10
c 1
b 0
f 0
wmc 6

4 Methods

Rating   Name   Duplication   Size   Complexity  
A getKey() 0 3 1
A getValue() 0 9 2
A addWifiNetwork() 0 3 1
A __construct() 0 4 2
1
<?php
2
3
declare(strict_types=1);
4
5
namespace LauLamanApps\ApplePassbook\MetaData\SemanticTag\Generic;
6
7
use LauLamanApps\ApplePassbook\MetaData\SemanticTag;
8
9
class WifiAccess implements SemanticTag
10
{
11
    /** @var WifiNetwork[] */
12
    private array $wifiNetworks = [];
13
14
    public function __construct(WifiNetwork $wifiNetwork = null)
15
    {
16
        if ($wifiNetwork) {
17
            $this->addWifiNetwork($wifiNetwork);
18
        }
19
    }
20
21
    public function addWifiNetwork(WifiNetwork $wifiNetwork): void
22
    {
23
        $this->wifiNetworks[] = $wifiNetwork;
24
    }
25
26
    public function getKey(): string
27
    {
28
        return 'wifiAccess';
29
    }
30
31
    /**
32
     * @return array<array<string, string>>
33
     */
34
    public function getValue(): array
35
    {
36
        $wifiNetworks = [];
37
38
        foreach ($this->wifiNetworks as $wifiNetwork) {
39
            $wifiNetworks[] = $wifiNetwork->getValue();
40
        }
41
42
        return $wifiNetworks;
43
    }
44
}
45