Passed
Push — feature/initial-implementation ( 69714c...aa3ce7 )
by Fike
02:16
created

PrecisionParameter   A

Complexity

Total Complexity 2

Size/Duplication

Total Lines 44
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
wmc 2
dl 0
loc 44
rs 10
c 0
b 0
f 0

2 Methods

Rating   Name   Duplication   Size   Complexity  
A getId() 0 3 1
A getConstraints() 0 19 1
1
<?php
2
3
namespace AmaTeam\ElasticSearch\Mapping\Type\Parameter;
4
5
use AmaTeam\ElasticSearch\Mapping\Type\Parameter\Infrastructure\AbstractParameter;
6
use Symfony\Component\Validator\Constraints\Choice;
7
8
class PrecisionParameter extends AbstractParameter
9
{
10
    const ID = 'precision';
11
    const FRIENDLY_ID = self::ID;
12
13
    const VALUE_IN = 'in';
14
    const VALUE_INCH = 'inch';
15
    const VALUE_YD = 'yd';
16
    const VALUE_YARD = 'yard';
17
    const VALUE_MI = 'mi';
18
    const VALUE_MILES = 'miles';
19
    const VALUE_KM = 'km';
20
    const VALUE_KILOMETERS = 'kilometers';
21
    const VALUE_M = 'm';
22
    const VALUE_METERS = 'meters';
23
    const VALUE_CM = 'cm';
24
    const VALUE_CENTIMETERS = 'centimeters';
25
    const VALUE_MM = 'mm';
26
    const VALUE_MILLIMETERS = 'millimeters';
27
28
    public function getId(): string
29
    {
30
        return self::ID;
31
    }
32
33
    public function getConstraints(): array
34
    {
35
        $values = [
36
            self::VALUE_IN => 'in',
37
            self::VALUE_INCH => 'inch',
38
            self::VALUE_YD => 'yd',
39
            self::VALUE_YARD => 'yard',
40
            self::VALUE_MI => 'mi',
41
            self::VALUE_MILES => 'miles',
42
            self::VALUE_KM => 'km',
43
            self::VALUE_KILOMETERS => 'kilometers',
44
            self::VALUE_M => 'm',
45
            self::VALUE_METERS => 'meters',
46
            self::VALUE_CM => 'cm',
47
            self::VALUE_CENTIMETERS => 'centimeters',
48
            self::VALUE_MM => 'mm',
49
            self::VALUE_MILLIMETERS => 'millimeters',
50
        ];
51
        return [new Choice(['strict' => true, 'choices' => $values])];
52
    }
53
}
54