Passed
Push — master ( d38468...eb5cf9 )
by Al3x
01:39
created

InvoiceNinjaHydratorFactory::__invoke()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 10
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 1
Bugs 0 Features 1
Metric Value
cc 1
eloc 6
c 1
b 0
f 1
nc 1
nop 3
dl 0
loc 10
ccs 0
cts 7
cp 0
crap 2
rs 10
1
<?php
2
declare(strict_types=1);
3
4
namespace InvoiceNinjaModule\Hydrator;
5
6
use Interop\Container\ContainerInterface;
7
use InvoiceNinjaModule\Strategy\ContactsStrategy;
8
use InvoiceNinjaModule\Strategy\InvitationsStrategy;
9
use InvoiceNinjaModule\Strategy\InvoiceItemsStrategy;
10
use Laminas\ServiceManager\Factory\FactoryInterface;
11
12
/**
13
 * Class InvoiceNinjaHydratorFactory
14
 */
15
final class InvoiceNinjaHydratorFactory implements FactoryInterface
16
{
17
    public function __invoke(ContainerInterface $container, $requestedName, array $options = null)
18
    {
19
        $hydrator = $container->get('ReflectionHydrator');
20
21
        $hydrator->addStrategy('lineItems', $container->get(InvoiceItemsStrategy::class));
22
        $hydrator->addStrategy('line_items', $container->get(InvoiceItemsStrategy::class));
23
        $hydrator->addStrategy('contacts', $container->get(ContactsStrategy::class));
24
        $hydrator->addStrategy('invitations', $container->get(InvitationsStrategy::class));
25
26
        return $hydrator;
27
    }
28
}
29