SWbemQualifierSet::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 6
Code Lines 3

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 4
CRAP Score 1

Importance

Changes 0
Metric Value
eloc 3
dl 0
loc 6
ccs 4
cts 4
cp 1
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
crap 1
1
<?php
2
3
namespace PhpWinTools\WmiScripting\Support\ApiObjects;
4
5
use PhpWinTools\Support\COM\VariantWrapper;
6
use function PhpWinTools\WmiScripting\Support\resolve;
7
use PhpWinTools\WmiScripting\Support\ApiObjects\Contracts\QualifierSet;
8
use PhpWinTools\WmiScripting\Support\ApiObjects\VariantInterfaces\QualifierVariant;
9
use PhpWinTools\WmiScripting\Support\ApiObjects\VariantInterfaces\QualifierSetVariant;
10
11
/**
12
 * @link https://docs.microsoft.com/en-us/windows/win32/wmisdk/swbemqualifierset
13
 */
14
class SWbemQualifierSet extends AbstractWbemObject implements QualifierSet
15
{
16
    protected $count = 0;
17
18
    protected $qualifiers = [];
19
20
    /** @var VariantWrapper|QualifierSetVariant|QualifierVariant[] */
21
    protected $object;
22
23 2
    public function __construct(VariantWrapper $variant)
24
    {
25 2
        parent::__construct($variant);
26
27 2
        $this->buildQualifiers();
28 2
        $this->count = (int) $this->object->Count;
0 ignored issues
show
Bug Best Practice introduced by
The property Count does not exist on PhpWinTools\Support\COM\VariantWrapper. Since you implemented __get, consider adding a @property annotation.
Loading history...
29 2
    }
30
31 2
    protected function buildQualifiers()
32
    {
33 2
        foreach ($this->object as $item) {
34 2
            $this->qualifiers[$item->Name] = resolve()->qualifier($item);
35
        }
36 2
    }
37
}
38