Completed
Pull Request — master (#90)
by Arnaud
03:14
created

AbstractField::setApplicationConfiguration()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 4
ccs 3
cts 3
cp 1
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 1
crap 1
1
<?php
2
3
namespace LAG\AdminBundle\Field;
4
5
use LAG\AdminBundle\Application\Configuration\ApplicationConfiguration;
6
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
7
use Symfony\Component\OptionsResolver\OptionsResolver;
8
9
abstract class AbstractField implements FieldInterface
10
{
11
    const TYPE_STRING = 'string';
12
    const TYPE_LINK = 'link';
13
    const TYPE_ARRAY = 'array';
14
    const TYPE_DATE = 'date';
15
    const TYPE_COUNT = 'count';
16
    const TYPE_ACTION = 'action';
17
    const TYPE_COLLECTION = 'collection';
18
    const TYPE_BOOLEAN = 'boolean';
19
    const TYPE_MAPPED = 'mapped';
20
    const TYPE_ACTION_COLLECTION = 'action_collection';
21
22
    /**
23
     * Field's name
24
     *
25
     * @var string
26
     */
27
    protected $name;
28
29
    /**
30
     * Application configuration for default options
31
     *
32
     * @var ApplicationConfiguration
33
     */
34
    protected $applicationConfiguration;
35
36
    /**
37
     * Field's resolved options
38
     *
39
     * @var ParameterBag
40
     */
41
    protected $options;
42
43
    /**
44
     * Field constructor.
45
     */
46 4
    public function __construct()
47
    {
48 4
        $this->options = new ParameterBag();
49 4
    }
50
51
    /**
52
     * @return string
53
     */
54
    public function getName()
55
    {
56
        return $this->name;
57
    }
58
59
    /**
60
     * @param string $name
61
     */
62
    public function setName($name)
63
    {
64
        $this->name = $name;
65
    }
66
67
    /**
68
     * Return application configuration.
69
     *
70
     * @return ApplicationConfiguration
71
     */
72
    public function getApplicationConfiguration()
73
    {
74
        return $this->applicationConfiguration;
75
    }
76
77
    /**
78
     * @param ApplicationConfiguration $configuration
79
     */
80 3
    public function setApplicationConfiguration($configuration)
81
    {
82 3
        $this->applicationConfiguration = $configuration;
83 3
    }
84
85
    /**
86
     * Set resolved options.
87
     *
88
     * @param array $options
89
     * @return void
90
     */
91 2
    public function setOptions(array $options)
92
    {
93 2
        $this->options = new ParameterBag($options);
94 2
    }
95
    
96
    /**
97
     * @inheritdoc
98
     */
99
    public function configureOptions(OptionsResolver $resolver)
100
    {
101
    }
102
}
103