build(); } return static::$instance; } /** * Set the instance of the container. * * @param \Psr\Container\ContainerInterface|null $container * @return \Psr\Container\ContainerInterface|static */ public static function setInstance(ContainerInterface $container = null) { return static::$instance = $container; } /** * Set up the ContainerBuilder. */ protected static function createBuilder(): ContainerBuilder { $builder = new ContainerBuilder(); if (\Studip\ENV == 'production') { $builder->enableCompilation($GLOBALS['TMP_PATH']); } $builder->ignorePhpDocErrors(true); $builder->addDefinitions('lib/bootstrap-definitions.php'); $jsonapiSettings = require 'lib/classes/JsonApi/settings.php'; $jsonapiSettings($builder); $jsonapiDependencies = require 'lib/classes/JsonApi/dependencies.php'; $jsonapiDependencies($builder); return $builder; } }