QNameAttributeReferenceImpl   A
last analyzed

Complexity

Total Complexity 3

Size/Duplication

Total Lines 15
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
eloc 8
c 1
b 0
f 0
dl 0
loc 15
rs 10
wmc 3

2 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 3 1
A getReferenceIdentifier() 0 8 2
1
<?php
2
3
namespace Xml\Impl\Type\Reference;
4
5
use Xml\Impl\Type\Attribute\AttributeImpl;
6
use Xml\Impl\Util\QName;
7
use Xml\Instance\ModelElementInstanceInterface;
8
9
class QNameAttributeReferenceImpl extends AttributeReferenceImpl
10
{
11
    public function __construct(AttributeImpl $referenceSourceAttribute)
12
    {
13
        parent::__construct($referenceSourceAttribute);
14
    }
15
16
    public function getReferenceIdentifier(ModelElementInstanceInterface $referenceSourceElement): ?string
17
    {
18
        $identifier = parent::getReferenceIdentifier($referenceSourceElement);
19
        if (!empty($identifier)) {
20
            $qName = QName::parseQName($identifier);
21
            return $qName->getLocalName();
22
        } else {
23
            return null;
24
        }
25
    }
26
}
27