3 namespace Drupal\Console\Bootstrap;
5 use Symfony\Component\HttpFoundation\Request;
6 use Drupal\Core\DrupalKernel as DrupalKernelBase;
7 use Drupal\Core\DependencyInjection\ServiceModifierInterface;
12 * @package Drupal\Console\Utils
14 class DrupalKernel extends DrupalKernelBase
17 * @var ServiceModifierInterface[]
19 protected $serviceModifiers = [];
24 public static function createFromRequest(Request $request, $class_loader, $environment, $allow_dumping = true, $app_root = null)
26 $kernel = new static($environment, $class_loader, $allow_dumping, $app_root);
27 static::bootEnvironment($app_root);
28 $kernel->initializeSettings($request);
29 $kernel->handle($request);
34 * @param \Drupal\Core\DependencyInjection\ServiceModifierInterface $serviceModifier
36 public function addServiceModifier(ServiceModifierInterface $serviceModifier)
38 $this->serviceModifiers[] = $serviceModifier;
44 protected function getContainerBuilder()
46 $container = parent::getContainerBuilder();
47 foreach ($this->serviceModifiers as $serviceModifier) {
48 $serviceModifier->alter($container);