You are here

public function NodeServiceProvider::register in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/node/src/NodeServiceProvider.php \Drupal\node\NodeServiceProvider::register()

Registers services to the container.

Parameters

ContainerBuilder $container: The ContainerBuilder to register services to.

Overrides ServiceProviderInterface::register

File

core/modules/node/src/NodeServiceProvider.php, line 19

Class

NodeServiceProvider
Registers services in the container.

Namespace

Drupal\node

Code

public function register(ContainerBuilder $container) {

  // Register the node.node_translation_migrate service in the container if
  // the migrate and language modules are enabled.
  $modules = $container
    ->getParameter('container.modules');
  if (isset($modules['migrate']) && isset($modules['language'])) {
    $container
      ->register('node.node_translation_migrate', NodeTranslationMigrateSubscriber::class)
      ->addTag('event_subscriber')
      ->addArgument(new Reference('keyvalue'))
      ->addArgument(new Reference('state'));
  }

  // Register the node.node_translation_exception service in the container if
  // the language module is enabled.
  if (isset($modules['language'])) {
    $container
      ->register('node.node_translation_exception', NodeTranslationExceptionSubscriber::class)
      ->addTag('event_subscriber')
      ->addArgument(new Reference('keyvalue'))
      ->addArgument(new Reference('language_manager'))
      ->addArgument(new Reference('url_generator'))
      ->addArgument(new Reference('state'));
  }
}