getValidationGroupsForSubject()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 9
Code Lines 5

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 1
eloc 5
nc 1
nop 3
dl 0
loc 9
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
/*
6
 * (c) 2019, Wesley O. Nichols
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace Wesnick\WorkflowBundle\Validation;
13
14
use Symfony\Component\Workflow\Transition;
15
use Symfony\Component\Workflow\Workflow;
16
17
/**
18
 * Class WorkflowValidationStrategy.
19
 *
20
 * @author Wesley O. Nichols <[email protected]>
21
 */
22
class WorkflowValidationStrategy implements WorkflowValidationStrategyInterface
23
{
24
    public function getValidationGroupsForSubject($subject, Workflow $workflow, Transition $transition): array
25
    {
26
        $groups = array_map(function ($state) use ($workflow) {
27
            return $workflow->getName().'_'.$state;
28
        }, $transition->getTos());
29
30
        array_unshift($groups, 'Default', $workflow->getName());
31
32
        return $groups;
33
    }
34
}
35