Passed
Push — develop ( b22678...97e476 )
by Daniel
08:45
created

FileMiddleware   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 19
Duplicated Lines 0 %

Test Coverage

Coverage 0%

Importance

Changes 0
Metric Value
eloc 7
dl 0
loc 19
ccs 0
cts 9
cp 0
rs 10
c 0
b 0
f 0
wmc 3

3 Methods

Rating   Name   Duplication   Size   Complexity  
A supportsData() 0 3 1
A process() 0 6 1
A getSubscribedServices() 0 4 1
1
<?php
2
3
namespace Silverback\ApiComponentBundle\Serializer\Middleware;
4
5
use Silverback\ApiComponentBundle\Entity\Component\FileInterface;
6
use Silverback\ApiComponentBundle\Factory\FileDataFactory;
7
8
class FileMiddleware extends AbstractMiddleware
9
{
10
    public function process($component, array $context = array())
11
    {
12
        /** @var FileDataFactory $factory */
13
        $factory = $this->container->get(FileDataFactory::class);
14
        $fileData = $factory->create($component);
15
        $component->setFileData($fileData);
16
    }
17
18
    public function supportsData($data): bool
19
    {
20
        return $data instanceof FileInterface;
21
    }
22
23
    public static function getSubscribedServices(): array
24
    {
25
        return [
26
            '?' . FileDataFactory::class
27
        ];
28
    }
29
}
30