Completed
Branch develop (598d0f)
by Benjamin
03:23
created

RuleConfigResolver::configureOptions()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 28
Code Lines 25

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
cc 1
eloc 25
c 1
b 0
f 0
nc 1
nop 1
dl 0
loc 28
rs 9.52
1
<?php
2
3
namespace Obblm\Core\Helper\Rule\Config;
4
5
use Symfony\Component\OptionsResolver\OptionsResolver;
6
7
class RuleConfigResolver extends AbstractTreeResolver implements ConfigInterface {
8
9
    public static function getChildren():array {
10
        return [
11
            'rosters' => RosterResolver::class,
12
            //'inducements' => RosterTreeResolver::class,
13
            //'star_players' => RosterTreeResolver::class,
14
        ];
15
    }
16
17
    public function configureOptions(OptionsResolver $resolver)
18
    {
19
        $resolver->setDefaults([
20
            'default_team_inducements' => null,
21
            'sidelines_cost'           => null,
22
            'template'                 => "base",
23
        ])
24
            ->setRequired('post_bb_2020')
25
            ->setRequired('max_team_cost')
26
            ->setRequired('rosters')
27
            ->setRequired('inducements')
28
            ->setRequired('star_players')
29
            ->setRequired('spp_levels')
30
            ->setRequired('injuries')
31
            ->setRequired('skills')
32
            ->setRequired('experience_value_modifiers')
33
            ->setRequired('fields')
34
            ->setAllowedTypes('post_bb_2020', ['bool'])
35
            ->setAllowedTypes('max_team_cost', ['int'])
36
            ->setAllowedTypes('rosters', ['array'])
37
            ->setAllowedTypes('inducements', ['array'])
38
            ->setAllowedTypes('star_players', ['array'])
39
            ->setAllowedTypes('spp_levels', ['array'])
40
            ->setAllowedTypes('injuries', ['array'])
41
            ->setAllowedTypes('skills', ['array'])
42
            ->setAllowedTypes('experience_value_modifiers', ['array'])
43
            ->setAllowedTypes('fields', ['array'])
44
            ->setAllowedTypes('template', ['string'])
45
        ;
46
    }
47
}
48