Bios   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 50
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
wmc 3
eloc 25
dl 0
loc 50
ccs 0
cts 9
cp 0
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 18 3
1
<?php
2
3
namespace PhpWinTools\WmiScripting\Models;
4
5
use PhpWinTools\WmiScripting\Cim\CimBiosElement;
6
use PhpWinTools\WmiScripting\MappingStrings\BiosCharacteristics;
7
8
/**
9
 * @link https://docs.microsoft.com/en-us/windows/win32/cimwin32prov/win32-bios
10
 */
11
class Bios extends CimBiosElement
12
{
13
    protected $uuid = '{8502C4E1-5FBB-11D2-AAC1-006008C78BC7}';
14
15
    protected $biosCharacteristics;
16
17
    protected $bIOSVersion;
18
19
    protected $currentLanguage;
20
21
    protected $embeddedControllerMajorVersion;
22
23
    protected $embeddedControllerMinorVersion;
24
25
    protected $installableLanguages;
26
27
    protected $listOfLanguages;
28
29
    protected $releaseDate;
30
31
    protected $sMBIOSBIOSVersion;
32
33
    protected $sMBIOSMajorVersion;
34
35
    protected $sMBIOSMinorVersion;
36
37
    protected $sMBIOSPresent;
38
39
    protected $systemBiosMajorVersion;
40
41
    protected $systemBiosMinorVersion;
42
43
    public function __construct(array $attributes = [])
44
    {
45
        $this->attribute_casting['biosCharacteristics'] = function ($values) {
46
            $characteristics = [];
47
48
            foreach ($values as $constant) {
49
                if (trim($characteristic = BiosCharacteristics::string($constant)) === '') {
50
                    $characteristics[$constant] = 'UNKNOWN';
51
                    continue;
52
                }
53
54
                $characteristics[$constant] = $characteristic;
55
            }
56
57
            return $characteristics;
58
        };
59
60
        parent::__construct($attributes);
61
    }
62
}
63