Mercurial > hg > isophonics-drupal-site
diff core/lib/Drupal/Core/DependencyInjection/Container.php @ 0:4c8ae668cc8c
Initial import (non-working)
author | Chris Cannam |
---|---|
date | Wed, 29 Nov 2017 16:09:58 +0000 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/core/lib/Drupal/Core/DependencyInjection/Container.php Wed Nov 29 16:09:58 2017 +0000 @@ -0,0 +1,32 @@ +<?php + +namespace Drupal\Core\DependencyInjection; + +use Drupal\Component\DependencyInjection\Container as DrupalContainer; + +/** + * Extends the Drupal container to set the service ID on the created object. + */ +class Container extends DrupalContainer { + + /** + * {@inheritdoc} + */ + public function set($id, $service) { + parent::set($id, $service); + + // Ensure that the _serviceId property is set on synthetic services as well. + if (isset($this->services[$id]) && is_object($this->services[$id]) && !isset($this->services[$id]->_serviceId)) { + $this->services[$id]->_serviceId = $id; + } + } + + /** + * {@inheritdoc} + */ + public function __sleep() { + assert(FALSE, 'The container was serialized.'); + return array_keys(get_object_vars($this)); + } + +}