DuplicateIdentityException::__construct()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 3
dl 0
loc 3
rs 10
c 0
b 0
f 0
1
<?php
2
/**
3
 * Copyright 2017 SURFnet bv
4
 *
5
 * Licensed under the Apache License, Version 2.0 (the "License");
6
 * you may not use this file except in compliance with the License.
7
 * You may obtain a copy of the License at
8
 *
9
 *     http://www.apache.org/licenses/LICENSE-2.0
10
 *
11
 * Unless required by applicable law or agreed to in writing, software
12
 * distributed under the License is distributed on an "AS IS" BASIS,
13
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
 * See the License for the specific language governing permissions and
15
 * limitations under the License.
16
 */
0 ignored issues
show
Coding Style introduced by
Missing @link tag in file comment
Loading history...
17
18
namespace Surfnet\StepupMiddleware\CommandHandlingBundle\Identity\CommandHandler\Exception;
19
20
use RuntimeException;
21
use Surfnet\Stepup\Identity\Value\Institution;
22
use Surfnet\Stepup\Identity\Value\NameId;
23
use Throwable;
24
25
final class DuplicateIdentityException extends RuntimeException
0 ignored issues
show
Coding Style introduced by
Missing doc comment for class DuplicateIdentityException
Loading history...
26
{
27
    public function __construct(string $message = "", int $code = 0, Throwable $previous = null)
28
    {
29
        parent::__construct($message, $code, $previous);
30
    }
31
32
    /**
0 ignored issues
show
Coding Style introduced by
Parameter $nameId should have a doc-comment as per coding-style.
Loading history...
Coding Style introduced by
Parameter $institution should have a doc-comment as per coding-style.
Loading history...
33
     *
34
     * @return DuplicateIdentityException
35
     */
36
    public static function forBootstrappingWithYubikeySecondFactor(NameId $nameId, Institution $institution): self
37
    {
38
        return new self(
39
            sprintf(
40
                'Trying to bootstrap a duplicate identity: an identity with name ID "%s" from institution "%s" already exists.',
41
                $nameId->getNameId(),
42
                $institution->getInstitution(),
43
            ),
44
        );
45
    }
46
}
47