Completed
Pull Request — develop (#225)
by
unknown
05:15 queued 02:48
created

RemoteVettingStateValidating   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 20
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 6

Importance

Changes 0
Metric Value
wmc 2
lcom 0
cbo 6
dl 0
loc 20
rs 10
c 0
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A handleValidated() 0 16 2
1
<?php
2
/**
3
 * Copyright 2010 SURFnet B.V.
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
 */
17
18
namespace Surfnet\StepupSelfService\SelfServiceBundle\Service\RemoteVetting\State;
19
20
use Surfnet\StepupSelfService\SelfServiceBundle\Exception\InvalidRemoteVettingContextException;
21
use Surfnet\StepupSelfService\SelfServiceBundle\Service\RemoteVetting\Dto\AttributeListDto;
22
use Surfnet\StepupSelfService\SelfServiceBundle\Service\RemoteVetting\Dto\RemoteVettingProcessDto;
23
use Surfnet\StepupSelfService\SelfServiceBundle\Service\RemoteVetting\RemoteVettingContext;
24
use Surfnet\StepupSelfService\SelfServiceBundle\Service\RemoteVetting\Value\ProcessId;
25
26
class RemoteVettingStateValidating extends AbstractRemoteVettingState implements RemoteVettingState
27
{
28
29
    public function handleValidated(
30
        RemoteVettingContext $context,
31
        RemoteVettingProcessDto $process,
32
        ProcessId $id,
33
        AttributeListDto $externalAttributes
34
    ) {
35
        if (!$process->getProcessId()->isValid($id)) {
36
            throw new InvalidRemoteVettingContextException('Invalid remote vetting context found');
37
        }
38
39
        $process->setAttributes($externalAttributes);
40
41
        $context->setState(new RemoteVettingStateValidated());
42
43
        return $process;
44
    }
45
}
46