class RestServiceProvider in Drupal 8
Provides BC services.
These services are not added via rest.services.yml because the service classes extend classes from the HAL module. They also have no use without that module.
Hierarchy
- class \Drupal\rest\RestServiceProvider implements ServiceProviderInterface
Expanded class hierarchy of RestServiceProvider
File
- core/
modules/ rest/ src/ RestServiceProvider.php, line 20
Namespace
Drupal\restView source
class RestServiceProvider implements ServiceProviderInterface {
/**
* {@inheritdoc}
*/
public function register(ContainerBuilder $container) {
$modules = $container
->getParameter('container.modules');
if (isset($modules['hal'])) {
// @deprecated in Drupal 8.3.x and will be removed before Drupal 9.0.0.
// Use hal.link_manager instead.
// @see https://www.drupal.org/node/2830467
$service_definition = new ChildDefinition(new Reference('hal.link_manager'));
$service_definition
->setClass(LinkManager::class);
$container
->setDefinition('rest.link_manager', $service_definition);
// @deprecated in Drupal 8.3.x and will be removed before Drupal 9.0.0.
// Use hal.link_manager.type instead.
// @see https://www.drupal.org/node/2830467
$service_definition = new ChildDefinition(new Reference('hal.link_manager.type'));
$service_definition
->setClass(TypeLinkManager::class);
$container
->setDefinition('rest.link_manager.type', $service_definition);
// @deprecated in Drupal 8.3.x and will be removed before Drupal 9.0.0.
// Use hal.link_manager.relation instead.
// @see https://www.drupal.org/node/2830467
$service_definition = new ChildDefinition(new Reference('hal.link_manager.relation'));
$service_definition
->setClass(RelationLinkManager::class);
$container
->setDefinition('rest.link_manager.relation', $service_definition);
}
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
RestServiceProvider:: |
public | function |
Registers services to the container. Overrides ServiceProviderInterface:: |