vendor/sulu/sulu/src/Sulu/Bundle/PreviewBundle/SuluPreviewBundle.php line 25

Open in your IDE?
  1. <?php
  2. /*
  3.  * This file is part of Sulu.
  4.  *
  5.  * (c) Sulu GmbH
  6.  *
  7.  * This source file is subject to the MIT license that is bundled
  8.  * with this source code in the file LICENSE.
  9.  */
  10. namespace Sulu\Bundle\PreviewBundle;
  11. use Sulu\Bundle\PersistenceBundle\PersistenceBundleTrait;
  12. use Sulu\Bundle\PreviewBundle\Domain\Model\PreviewLinkInterface;
  13. use Sulu\Bundle\PreviewBundle\Infrastructure\Symfony\DependencyInjection\SuluPreviewExtension;
  14. use Sulu\Component\Symfony\CompilerPass\TaggedServiceCollectorCompilerPass;
  15. use Symfony\Component\DependencyInjection\ContainerBuilder;
  16. use Symfony\Component\DependencyInjection\Extension\ExtensionInterface;
  17. use Symfony\Component\HttpKernel\Bundle\Bundle;
  18. /**
  19.  * Integrates preview into symfony.
  20.  */
  21. class SuluPreviewBundle extends Bundle
  22. {
  23.     use PersistenceBundleTrait;
  24.     public function build(ContainerBuilder $container)
  25.     {
  26.         parent::build($container);
  27.         $this->buildPersistence(
  28.             [
  29.                 PreviewLinkInterface::class => 'sulu.model.preview_link.class',
  30.             ],
  31.             $container
  32.         );
  33.         $container->addCompilerPass(
  34.             new TaggedServiceCollectorCompilerPass(
  35.                 'sulu_preview.preview_object_provider_registry',
  36.                 'sulu_preview.object_provider',
  37.                 0,
  38.                 'provider-key'
  39.             )
  40.         );
  41.     }
  42.     public function getContainerExtension(): ExtensionInterface
  43.     {
  44.         return new SuluPreviewExtension();
  45.     }
  46. }