function CoreServiceProvider::register
Same name in other branches
- 9 core/lib/Drupal/Core/CoreServiceProvider.php \Drupal\Core\CoreServiceProvider::register()
- 8.9.x core/lib/Drupal/Core/CoreServiceProvider.php \Drupal\Core\CoreServiceProvider::register()
- 10 core/lib/Drupal/Core/CoreServiceProvider.php \Drupal\Core\CoreServiceProvider::register()
Overrides ServiceProviderInterface::register
File
-
core/
lib/ Drupal/ Core/ CoreServiceProvider.php, line 56
Class
- CoreServiceProvider
- ServiceProvider class for mandatory core services.
Namespace
Drupal\CoreCode
public function register(ContainerBuilder $container) {
$this->registerTest($container);
// Only register the private file stream wrapper if a file path has been set.
if (Settings::get('file_private_path')) {
$container->register('stream_wrapper.private', 'Drupal\\Core\\StreamWrapper\\PrivateStream')
->addTag('stream_wrapper', [
'scheme' => 'private',
]);
}
$container->addCompilerPass(new HookCollectorPass());
// Add the compiler pass that lets service providers modify existing
// service definitions. This pass must come before all passes operating on
// services so that later list-building passes are operating on the
// post-alter services list.
$container->addCompilerPass(new ModifyServiceDefinitionsPass());
$container->addCompilerPass(new DevelopmentSettingsPass());
$container->addCompilerPass(new SuperUserAccessPolicyPass());
$container->addCompilerPass(new ProxyServicesPass());
$container->addCompilerPass(new BackendCompilerPass());
$container->addCompilerPass(new CorsCompilerPass());
$container->addCompilerPass(new StackedKernelPass());
$container->addCompilerPass(new StackedSessionHandlerPass());
$container->addCompilerPass(new MainContentRenderersPass());
// Collect tagged handler services as method calls on consumer services.
$container->addCompilerPass(new TaggedHandlersPass());
$container->addCompilerPass(new RegisterStreamWrappersPass());
$container->addCompilerPass(new TwigExtensionPass());
// Add a compiler pass for registering event subscribers.
$container->addCompilerPass(new RegisterEventSubscribersPass(new RegisterListenersPass()), PassConfig::TYPE_AFTER_REMOVING);
$container->addCompilerPass(new LoggerAwarePass(), PassConfig::TYPE_AFTER_REMOVING);
$container->addCompilerPass(new RegisterAccessChecksPass());
// Add a compiler pass for registering services needing destruction.
$container->addCompilerPass(new RegisterServicesForDestructionPass());
// Add the compiler pass that will process the tagged services.
$container->addCompilerPass(new ListCacheBinsPass());
$container->addCompilerPass(new CacheContextsPass());
$container->addCompilerPass(new AuthenticationProviderPass());
// Register plugin managers.
$container->addCompilerPass(new PluginManagerPass());
$container->addCompilerPass(new DeprecatedServicePass());
$container->registerForAutoconfiguration(EventSubscriberInterface::class)
->addTag('event_subscriber');
$container->registerForAutoconfiguration(LoggerAwareInterface::class)
->addTag('logger_aware');
$container->registerForAutoconfiguration(QueueFactoryInterface::class)
->addTag('queue_factory');
$container->registerForAutoconfiguration(ModuleUninstallValidatorInterface::class)
->addTag('module_install.uninstall_validator');
// Deprecated parameters.
if ($container->hasParameter('session.storage.options')) {
$session_storage_options = $container->getParameter('session.storage.options');
if (array_key_exists('sid_length', $session_storage_options)) {
@trigger_error('The "sid_length" parameter is deprecated in drupal:11.1.0 and will be removed in drupal:12.0.0. This setting should be removed from the settings file, since its usage has been removed. See https://www.drupal.org/node/3469305', E_USER_DEPRECATED);
}
if (array_key_exists('sid_bits_per_character', $session_storage_options)) {
@trigger_error('The "sid_bits_per_character" parameter is deprecated in drupal:11.1.0 and will be removed in drupal:12.0.0. This setting should be removed from the settings file, since its usage has been removed. See https://www.drupal.org/node/3469305', E_USER_DEPRECATED);
}
}
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.