PRF::fromXML()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 7
Code Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 4
c 1
b 0
f 0
nc 1
nop 1
dl 0
loc 7
rs 10
1
<?php
2
3
declare(strict_types=1);
4
5
namespace SimpleSAML\XMLSecurity\XML\xenc11;
6
7
use DOMElement;
8
use SimpleSAML\Assert\Assert;
9
use SimpleSAML\XML\Exception\InvalidDOMElementException;
10
11
/**
12
 * A class implementing the xenc11:PRF element.
13
 *
14
 * @package simplesamlphp/xml-security
15
 */
16
final class PRF extends AbstractPRFAlgorithmIdentifierType
17
{
18
    /**
19
     * @inheritDoc
20
     *
21
     * @throws \SimpleSAML\XML\Exception\InvalidDOMElementException
22
     *   If the qualified name of the supplied element is wrong
23
     */
24
    public static function fromXML(DOMElement $xml): static
25
    {
26
        Assert::same($xml->localName, static::getLocalName(), InvalidDOMElementException::class);
27
        Assert::same($xml->namespaceURI, static::getNamespaceURI(), InvalidDOMElementException::class);
28
29
        return new static(
30
            self::getOptionalAttribute($xml, 'Algorithm', null),
0 ignored issues
show
Bug introduced by
It seems like self::getOptionalAttribu...xml, 'Algorithm', null) can also be of type null; however, parameter $Algorithm of SimpleSAML\XMLSecurity\X...nc11\PRF::__construct() does only seem to accept string, maybe add an additional type check? ( Ignorable by Annotation )

If this is a false-positive, you can also ignore this issue in your code via the ignore-type  annotation

30
            /** @scrutinizer ignore-type */ self::getOptionalAttribute($xml, 'Algorithm', null),
Loading history...
31
        );
32
    }
33
}
34