Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. AutoAliasServicePass.php

function AutoAliasServicePass::process

Overrides CompilerPassInterface::process

File

vendor/symfony/dependency-injection/Compiler/AutoAliasServicePass.php, line 23

Class

AutoAliasServicePass
Sets a service to be an alias of another one, given a format pattern.

Namespace

Symfony\Component\DependencyInjection\Compiler

Code

public function process(ContainerBuilder $container) : void {
    foreach ($container->findTaggedServiceIds('auto_alias') as $serviceId => $tags) {
        foreach ($tags as $tag) {
            if (!isset($tag['format'])) {
                throw new InvalidArgumentException(\sprintf('Missing tag information "format" on auto_alias service "%s".', $serviceId));
            }
            $aliasId = $container->getParameterBag()
                ->resolveValue($tag['format']);
            if ($container->hasDefinition($aliasId) || $container->hasAlias($aliasId)) {
                $alias = new Alias($aliasId, $container->getDefinition($serviceId)
                    ->isPublic());
                $container->setAlias($serviceId, $alias);
            }
        }
    }
}

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal