MonsieurBizSyliusRichEditorPlugin::build()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
eloc 2
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
/*
4
 * This file is part of Monsieur Biz' Rich Editor plugin for Sylius.
5
 *
6
 * (c) Monsieur Biz <[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
declare(strict_types=1);
13
14
namespace MonsieurBiz\SyliusRichEditorPlugin;
15
16
use LogicException;
17
use MonsieurBiz\SyliusRichEditorPlugin\DependencyInjection\UiElementRegistryPass;
18
use Sylius\Bundle\CoreBundle\Application\SyliusPluginTrait;
19
use Symfony\Component\DependencyInjection\ContainerBuilder;
20
use Symfony\Component\DependencyInjection\Extension\ExtensionInterface;
21
use Symfony\Component\HttpKernel\Bundle\Bundle;
22
23
final class MonsieurBizSyliusRichEditorPlugin extends Bundle
24
{
25
    use SyliusPluginTrait;
26
27
    /**
28
     * Returns the plugin's container extension.
29
     *
30
     * @throws LogicException
31
     *
32
     * @return ExtensionInterface|null The container extension
33
     */
34
    public function getContainerExtension(): ?ExtensionInterface
35
    {
36
        if (null === $this->containerExtension) {
37
            $this->containerExtension = false;
38
            $extension = $this->createContainerExtension();
39
            if (null !== $extension) {
40
                $this->containerExtension = $extension;
41
            }
42
        }
43
44
        return $this->containerExtension instanceof ExtensionInterface
45
            ? $this->containerExtension
46
            : null;
47
    }
48
49
    /**
50
     * @param ContainerBuilder $container
51
     */
52
    public function build(ContainerBuilder $container): void
53
    {
54
        parent::build($container);
55
        $container->addCompilerPass(new UiElementRegistryPass());
56
    }
57
}
58