Registers EntityConverter services with the ParamConverterManager.
Expanded class hierarchy of RegisterParamConvertersPass
class RegisterParamConvertersPass implements CompilerPassInterface {
/**
* Adds services tagged with "paramconverter" to the param converter service.
*
* @param \Symfony\Component\DependencyInjection\ContainerBuilder $container
* The container to process.
*/
public function process(ContainerBuilder $container) {
if (!$container
->hasDefinition('paramconverter_manager')) {
return;
}
$manager = $container
->getDefinition('paramconverter_manager');
$services = array();
foreach ($container
->findTaggedServiceIds('paramconverter') as $id => $attributes) {
$priority = isset($attributes[0]['priority']) ? $attributes[0]['priority'] : 0;
$services[$priority][] = new Reference($id);
}
krsort($services);
foreach ($services as $priority) {
foreach ($priority as $service) {
$manager
->addMethodCall('addConverter', array(
$service,
));
}
}
}
}
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
RegisterParamConvertersPass:: |
public | function |
Adds services tagged with "paramconverter" to the param converter service. Overrides CompilerPassInterface:: |