Code Duplication    Length = 14-16 lines in 2 locations

src/DI/CMSUtilsServiceProvider.php 2 locations

@@ 30-43 (lines=14) @@
27
        $aggregateThemeFactory = null;
28
        $aggregateThemeUnserializer = null;
29
        return [
30
            AggregateThemeFactory::class => function(ContainerInterface $container) use (&$aggregateThemeFactory): AggregateThemeFactory
31
            {
32
                if ($aggregateThemeFactory !== null) {
33
                    return $aggregateThemeFactory;
34
                }
35
                $aggregateThemeFactory = new AggregateThemeFactory([]);
36
37
                $subThemeFactory = new SubThemeFactory($aggregateThemeFactory);
38
                $twigThemeFactory = new TwigThemeFactory($container->get(\Twig_Environment::class), $container->get(BlockRendererInterface::class));
39
40
                $aggregateThemeFactory->addThemeFactory($twigThemeFactory);
41
                $aggregateThemeFactory->addThemeFactory($subThemeFactory);
42
                return $aggregateThemeFactory;
43
            },
44
            ThemeFactoryInterface::class => new Alias(AggregateThemeFactory::class),
45
            BlockRendererInterface::class => new Alias(BlockRenderer::class),
46
            BlockRenderer::class => function(ContainerInterface $container) use (&$aggregateThemeFactory): BlockRenderer
@@ 46-61 (lines=16) @@
43
            },
44
            ThemeFactoryInterface::class => new Alias(AggregateThemeFactory::class),
45
            BlockRendererInterface::class => new Alias(BlockRenderer::class),
46
            BlockRenderer::class => function(ContainerInterface $container) use (&$aggregateThemeFactory): BlockRenderer
47
            {
48
                if ($aggregateThemeFactory === null) {
49
                    $aggregateThemeFactory = new AggregateThemeFactory([]);
50
                }
51
52
                $blockRenderer = new BlockRenderer($aggregateThemeFactory);
53
54
                $subThemeFactory = new SubThemeFactory($aggregateThemeFactory);
55
                $twigThemeFactory = new TwigThemeFactory($container->get(\Twig_Environment::class), $blockRenderer);
56
57
                $aggregateThemeFactory->addThemeFactory($subThemeFactory);
58
                $aggregateThemeFactory->addThemeFactory($twigThemeFactory);
59
60
                return $blockRenderer;
61
            },
62
63
            AggregateThemeUnserializer::class => function(ContainerInterface $container) use (&$aggregateThemeUnserializer): AggregateThemeUnserializer
64
            {