Open Journal Systems  3.3.0
AddMimeTypeGuesserPass.php
1 <?php
2 
3 /*
4  * This file is part of the Symfony package.
5  *
6  * (c) Fabien Potencier <fabien@symfony.com>
7  *
8  * For the full copyright and license information, please view the LICENSE
9  * file that was distributed with this source code.
10  */
11 
13 
14 use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
15 use Symfony\Component\DependencyInjection\ContainerBuilder;
16 use Symfony\Component\DependencyInjection\Reference;
17 
23 class AddMimeTypeGuesserPass implements CompilerPassInterface
24 {
25  private $mimeTypesService;
26  private $mimeTypeGuesserTag;
27 
28  public function __construct(string $mimeTypesService = 'mime_types', string $mimeTypeGuesserTag = 'mime.mime_type_guesser')
29  {
30  $this->mimeTypesService = $mimeTypesService;
31  $this->mimeTypeGuesserTag = $mimeTypeGuesserTag;
32  }
33 
37  public function process(ContainerBuilder $container)
38  {
39  if ($container->has($this->mimeTypesService)) {
40  $definition = $container->findDefinition($this->mimeTypesService);
41  foreach ($container->findTaggedServiceIds($this->mimeTypeGuesserTag, true) as $id => $attributes) {
42  $definition->addMethodCall('registerGuesser', [new Reference($id)]);
43  }
44  }
45  }
46 }
Symfony\Component\Mime\DependencyInjection
Definition: AddMimeTypeGuesserPass.php:12
Symfony\Component\Mime\DependencyInjection\AddMimeTypeGuesserPass\process
process(ContainerBuilder $container)
Definition: AddMimeTypeGuesserPass.php:37
Symfony\Component\Mime\DependencyInjection\AddMimeTypeGuesserPass\__construct
__construct(string $mimeTypesService='mime_types', string $mimeTypeGuesserTag='mime.mime_type_guesser')
Definition: AddMimeTypeGuesserPass.php:28
Symfony\Component\Mime\DependencyInjection\AddMimeTypeGuesserPass
Definition: AddMimeTypeGuesserPass.php:23