Completed
Push — master ( 8386c2...ffd2be )
by Simonas
61:26
created

ONGRFilterManagerBundle::build()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 19
Code Lines 14

Duplication

Lines 0
Ratio 0 %

Importance

Changes 5
Bugs 0 Features 0
Metric Value
c 5
b 0
f 0
dl 0
loc 19
rs 9.4285
cc 1
eloc 14
nc 1
nop 1
1
<?php
2
3
/*
4
 * This file is part of the ONGR package.
5
 *
6
 * (c) NFQ Technologies UAB <[email protected]>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace ONGR\FilterManagerBundle;
13
14
use ONGR\FilterManagerBundle\DependencyInjection\Compiler\FilterPass;
15
use ONGR\FilterManagerBundle\DependencyInjection\Filter\ChoiceFilterFactory;
16
use ONGR\FilterManagerBundle\DependencyInjection\Filter\DateRangeFilterFactory;
17
use ONGR\FilterManagerBundle\DependencyInjection\Filter\DocumentValueFactory;
18
use ONGR\FilterManagerBundle\DependencyInjection\Filter\FieldValueFactory;
19
use ONGR\FilterManagerBundle\DependencyInjection\Filter\FuzzyFilterFactory;
20
use ONGR\FilterManagerBundle\DependencyInjection\Filter\MatchFilterFactory;
21
use ONGR\FilterManagerBundle\DependencyInjection\Filter\MultiChoiceFilterFactory;
22
use ONGR\FilterManagerBundle\DependencyInjection\Filter\PagerFilterFactory;
23
use ONGR\FilterManagerBundle\DependencyInjection\Filter\RangeFilterFactory;
24
use ONGR\FilterManagerBundle\DependencyInjection\Filter\SortFilterFactory;
25
use ONGR\FilterManagerBundle\DependencyInjection\ONGRFilterManagerExtension;
26
use Symfony\Component\DependencyInjection\ContainerBuilder;
27
use Symfony\Component\HttpKernel\Bundle\Bundle;
28
29
/**
30
 * Class ONGRFilterManagerBundle.
31
 */
32
class ONGRFilterManagerBundle extends Bundle
33
{
34
    /**
35
     * {@inheritdoc}
36
     */
37
    public function build(ContainerBuilder $container)
38
    {
39
        parent::build($container);
40
        
41
        /** @var ONGRFilterManagerExtension $extension */
42
        $extension = $container->getExtension('ongr_filter_manager');
43
        $extension->addFilterFactory(new ChoiceFilterFactory());
44
        $extension->addFilterFactory(new MultiChoiceFilterFactory());
45
        $extension->addFilterFactory(new MatchFilterFactory());
46
        $extension->addFilterFactory(new FuzzyFilterFactory());
47
        $extension->addFilterFactory(new SortFilterFactory());
48
        $extension->addFilterFactory(new PagerFilterFactory());
49
        $extension->addFilterFactory(new RangeFilterFactory());
50
        $extension->addFilterFactory(new DateRangeFilterFactory());
51
        $extension->addFilterFactory(new FieldValueFactory());
52
        $extension->addFilterFactory(new DocumentValueFactory());
53
54
        $container->addCompilerPass(new FilterPass());
55
    }
56
}
57