$request = \GuzzleHttp\Psr7\ServerRequest::fromGlobals();
$dice = (new Dice())->addRules(include __DIR__ . '/static/dependencies.config.php');
-/** @var \Friendica\Core\Addon\Capability\ICanLoadAddons $addonLoader */
-$addonLoader = $dice->create(\Friendica\Core\Addon\Capability\ICanLoadAddons::class);
-$dice = $dice->addRules($addonLoader->getActiveAddonConfig('dependencies'));
-$dice = $dice->addRule(Friendica\App\Mode::class, ['call' => [['determineRunMode', [false, $request->getServerParams()], Dice::CHAIN_CALL]]]);
-
-\Friendica\DI::init($dice);
-
-\Friendica\Core\Logger\Handler\ErrorHandler::register($dice->create(\Psr\Log\LoggerInterface::class));
$a = \Friendica\App::fromDice($dice);
public function processRequest(ServerRequestInterface $request, float $start_time): void
{
+ $this->setupContainerForRunningFrontend($request);
+
$this->requestId = $this->container->create(Request::class)->getRequestId();
$this->auth = $this->container->create(Authentication::class);
$this->config = $this->container->create(IManageConfigValues::class);
);
}
+ private function setupContainerForRunningFrontend(ServerRequestInterface $request): void
+ {
+ /** @var \Friendica\Core\Addon\Capability\ICanLoadAddons $addonLoader */
+ $addonLoader = $this->container->create(\Friendica\Core\Addon\Capability\ICanLoadAddons::class);
+ $this->container = $this->container->addRules($addonLoader->getActiveAddonConfig('dependencies'));
+ $this->container = $this->container->addRule(\Friendica\App\Mode::class, ['call' => [['determineRunMode', [false, $request->getServerParams()], Dice::CHAIN_CALL]]]);
+
+ \Friendica\DI::init($this->container);
+
+ \Friendica\Core\Logger\Handler\ErrorHandler::register($this->container->create(\Psr\Log\LoggerInterface::class));
+ }
+
/**
* Load the whole app instance
*/