InstitutionConfigurationOptions   A
last analyzed

Complexity

Total Complexity 1

Size/Duplication

Total Lines 58
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 0

Importance

Changes 0
Metric Value
wmc 1
lcom 1
cbo 0
dl 0
loc 58
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A fromData() 0 15 1
1
<?php
2
3
/**
4
 * Copyright 2016 SURFnet B.V.
5
 *
6
 * Licensed under the Apache License, Version 2.0 (the "License");
7
 * you may not use this file except in compliance with the License.
8
 * You may obtain a copy of the License at
9
 *
10
 *     http://www.apache.org/licenses/LICENSE-2.0
11
 *
12
 * Unless required by applicable law or agreed to in writing, software
13
 * distributed under the License is distributed on an "AS IS" BASIS,
14
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
 * See the License for the specific language governing permissions and
16
 * limitations under the License.
17
 */
18
19
namespace Surfnet\StepupMiddlewareClientBundle\Configuration\Dto;
20
21
use Surfnet\StepupMiddlewareClientBundle\Dto\Dto;
22
use Symfony\Component\Validator\Constraints as Assert;
23
24
class InstitutionConfigurationOptions implements Dto
25
{
26
    /**
27
     * @Assert\Type(type="boolean", message="middleware_client.dto.configuration.use_ra_locations.must_be_boolean")
28
     */
29
    public $useRaLocations;
30
31
    /**
32
     * @Assert\Type(type="boolean", message="middleware_client.dto.configuration.show_raa_contact_information.must_be_boolean")
33
     */
34
    public $showRaaContactInformation;
35
36
    /**
37
     * @Assert\Type(type="boolean", message="middleware_client.dto.configuration.verify_email.must_be_boolean")
38
     */
39
    public $verifyEmail;
40
41
    /**
42
     * @Assert\Type(type="boolean", message="middleware_client.dto.configuration.self_vet.must_be_boolean")
43
     */
44
    public $selfVet;
45
46
    /**
47
     * @Assert\Type(type="integer", message="middleware_client.dto.configuration.number_of_tokens_per_identity.must_be_integer")
48
     */
49
    public $numberOfTokensPerIdentity;
50
51
    /**
52
     * @Assert\Type(type="array", message="middleware_client.dto.configuration.allowed_second_factors.must_be_array")
53
     */
54
    public $allowedSecondFactors;
55
56
    public $useRa;
57
58
    public $useRaa;
59
60
    public $selectRaa;
61
62
    /**
63
     * @param array $data
64
     * @return InstitutionConfigurationOptions
65
     */
66
    public static function fromData(array $data)
67
    {
68
        $institutionConfigurationOptions                            = new self();
69
        $institutionConfigurationOptions->useRaLocations            = $data['use_ra_locations'];
70
        $institutionConfigurationOptions->showRaaContactInformation = $data['show_raa_contact_information'];
71
        $institutionConfigurationOptions->verifyEmail               = $data['verify_email'];
72
        $institutionConfigurationOptions->selfVet                   = $data['self_vet'];
73
        $institutionConfigurationOptions->allowedSecondFactors      = $data['allowed_second_factors'];
74
        $institutionConfigurationOptions->numberOfTokensPerIdentity = $data['number_of_tokens_per_identity'];
75
        $institutionConfigurationOptions->useRa                     = $data['use_ra'];
76
        $institutionConfigurationOptions->useRaa                    = $data['use_raa'];
77
        $institutionConfigurationOptions->selectRaa                 = $data['select_raa'];
78
79
        return $institutionConfigurationOptions;
80
    }
81
}
82