Completed
Push — master ( 253917...6bb17d )
by Antoine
08:29
created

CanRenderValidatorFactory   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 15
Duplicated Lines 0 %

Coupling/Cohesion

Components 0
Dependencies 4

Test Coverage

Coverage 0%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 1
c 1
b 0
f 0
lcom 0
cbo 4
dl 0
loc 15
ccs 0
cts 7
cp 0
rs 10

1 Method

Rating   Name   Duplication   Size   Complexity  
A __invoke() 0 12 1
1
<?php
2
/**
3
 * @copyright Interactive Solutions
4
 */
5
6
declare(strict_types=1);
7
8
namespace Roave\EmailTemplates\Factory\Validator;
9
10
use Roave\EmailTemplates\Service\Template\Engine\EngineInterface;
11
use Roave\EmailTemplates\Service\Template\EnginePluginManager;
12
use Roave\EmailTemplates\Validator\CanRenderValidator;
13
use Roave\EmailTemplates\Options\TemplateServiceOptions;
14
use Zend\Validator\ValidatorPluginManager;
15
use Zend\Validator\ValidatorPluginManagerAwareInterface;
16
17
final class CanRenderValidatorFactory
18
{
19
    public function __invoke(ValidatorPluginManager $manager): CanRenderValidator
20
    {
21
        $container = $manager->getServiceLocator();
22
23
        /* @var $options TemplateServiceOptions */
24
        $options = $container->get(TemplateServiceOptions::class);
25
26
        /* @var $engineContainer ContainerInterface */
27
        $engineContainer = $container->get(EnginePluginManager::class);
28
29
        return new CanRenderValidator($engineContainer->get($options->getEngine()));
30
    }
31
}
32