Completed
Pull Request — master (#19)
by John
09:10 queued 04:43
created

GraphicPrimitiveFactory   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 23
Duplicated Lines 0 %

Importance

Changes 0
Metric Value
eloc 12
dl 0
loc 23
rs 10
c 0
b 0
f 0
wmc 3

1 Method

Rating   Name   Duplication   Size   Complexity  
A getFieldRenderer() 0 17 3
1
<?php
2
3
namespace Graze\CiffRenderer\Renderer\FieldRenderer\GraphicPrimitive;
4
5
use Graze\CiffRenderer\Renderer\FieldRenderer\GraphicPrimitive\GraphicPrimitiveType;
6
use Graze\CiffRenderer\Renderer\FieldRenderer\GraphicPrimitive\FieldRendererOutlineBox;
7
use Graze\CiffRenderer\Renderer\FieldRenderer\GraphicPrimitive\FieldRendererFilledBox;
8
use Graze\CiffRenderer\Exception\UnsupportedFieldTypeException;
9
10
class GraphicPrimitiveFactory
11
{
12
    /**
13
     * @param string $graphicPrimitiveType
14
     * @return Graze\CiffRenderer\Renderer\FieldRenderer\FieldRendererInterface
0 ignored issues
show
Bug introduced by
The type Graze\CiffRenderer\Rende...\FieldRendererInterface was not found. Did you mean Graze\CiffRenderer\Rende...\FieldRendererInterface? If so, make sure to prefix the type with \.
Loading history...
15
     */
16
    public function getFieldRenderer($graphicPrimitiveType)
17
    {
18
        switch ($graphicPrimitiveType) {
19
            case GraphicPrimitiveType::TYPE_OUTLINE_BOX:
20
                $class = FieldRendererOutlineBox::class;
21
                break;
22
23
            case GraphicPrimitiveType::TYPE_FILLED_BOX:
24
                $class = FieldRendererFilledBox::class;
25
                break;
26
27
            default:
28
                throw new UnsupportedFieldTypeException($graphicPrimitiveType);
29
                break;
30
        }
31
32
        return $class::factory();
33
    }
34
}
35