mirror of
https://github.com/friendica/friendica
synced 2025-01-19 16:59:48 +00:00
Move setupContainerForLogger() and determine log channel into App class
This commit is contained in:
parent
870b3b9a1c
commit
7f643aadd8
4 changed files with 36 additions and 23 deletions
36
src/App.php
36
src/App.php
|
@ -138,7 +138,9 @@ class App
|
||||||
|
|
||||||
$this->setupContainerForAddons();
|
$this->setupContainerForAddons();
|
||||||
|
|
||||||
$this->container->setup(LogChannel::APP);
|
$this->setupContainerForLogger(LogChannel::APP);
|
||||||
|
|
||||||
|
$this->container->setup();
|
||||||
|
|
||||||
$this->registerErrorHandler();
|
$this->registerErrorHandler();
|
||||||
|
|
||||||
|
@ -178,6 +180,10 @@ class App
|
||||||
{
|
{
|
||||||
$this->setupContainerForAddons();
|
$this->setupContainerForAddons();
|
||||||
|
|
||||||
|
$this->setupContainerForLogger($this->determineLogChannel($argv));
|
||||||
|
|
||||||
|
$this->container->setup();
|
||||||
|
|
||||||
$this->registerErrorHandler();
|
$this->registerErrorHandler();
|
||||||
|
|
||||||
$this->registerTemplateEngine();
|
$this->registerTemplateEngine();
|
||||||
|
@ -189,7 +195,9 @@ class App
|
||||||
{
|
{
|
||||||
$this->setupContainerForAddons();
|
$this->setupContainerForAddons();
|
||||||
|
|
||||||
$this->container->setup(LogChannel::AUTH_JABBERED);
|
$this->setupContainerForLogger(LogChannel::AUTH_JABBERED);
|
||||||
|
|
||||||
|
$this->container->setup();
|
||||||
|
|
||||||
$this->registerErrorHandler();
|
$this->registerErrorHandler();
|
||||||
|
|
||||||
|
@ -218,6 +226,30 @@ class App
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private function determineLogChannel(array $argv): string
|
||||||
|
{
|
||||||
|
$command = strtolower($argv[1]) ?? '';
|
||||||
|
|
||||||
|
if ($command === 'daemon' || $command === 'jetstream') {
|
||||||
|
return LogChannel::DAEMON;
|
||||||
|
}
|
||||||
|
|
||||||
|
if ($command === 'worker') {
|
||||||
|
return LogChannel::WORKER;
|
||||||
|
}
|
||||||
|
|
||||||
|
// @TODO Add support for jetstream
|
||||||
|
|
||||||
|
return LogChannel::CONSOLE;
|
||||||
|
}
|
||||||
|
|
||||||
|
private function setupContainerForLogger(string $logChannel): void
|
||||||
|
{
|
||||||
|
$this->container->addRule(LoggerInterface::class, [
|
||||||
|
'constructParams' => [$logChannel],
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
private function registerErrorHandler(): void
|
private function registerErrorHandler(): void
|
||||||
{
|
{
|
||||||
ErrorHandler::register($this->container->create(LoggerInterface::class));
|
ErrorHandler::register($this->container->create(LoggerInterface::class));
|
||||||
|
|
|
@ -187,12 +187,6 @@ HELP;
|
||||||
|
|
||||||
$className = $this->subConsoles[$command];
|
$className = $this->subConsoles[$command];
|
||||||
|
|
||||||
if (is_subclass_of($className, Friendica\Console\AbstractConsole::class)) {
|
|
||||||
$this->container->setup($className::LOG_CHANNEL);
|
|
||||||
} else {
|
|
||||||
$this->container->setup(LogChannel::CONSOLE);
|
|
||||||
}
|
|
||||||
|
|
||||||
/** @var Console $subconsole */
|
/** @var Console $subconsole */
|
||||||
$subconsole = $this->container->create($className, [$subargs]);
|
$subconsole = $this->container->create($className, [$subargs]);
|
||||||
|
|
||||||
|
|
|
@ -19,11 +19,9 @@ interface Container
|
||||||
*
|
*
|
||||||
* @deprecated
|
* @deprecated
|
||||||
*
|
*
|
||||||
* @param string $logChannel The Log Channel of this call
|
|
||||||
*
|
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function setup(string $logChannel): void;
|
public function setup(): void;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns a fully constructed object based on $name using $args and $share as constructor arguments if supplied
|
* Returns a fully constructed object based on $name using $args and $share as constructor arguments if supplied
|
||||||
|
|
|
@ -11,7 +11,6 @@ namespace Friendica\Core;
|
||||||
|
|
||||||
use Dice\Dice;
|
use Dice\Dice;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
use Psr\Log\LoggerInterface;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Wrapper for the Dice class to make some basic setups
|
* Wrapper for the Dice class to make some basic setups
|
||||||
|
@ -39,13 +38,10 @@ final class DiceContainer implements Container
|
||||||
*
|
*
|
||||||
* @deprecated
|
* @deprecated
|
||||||
*
|
*
|
||||||
* @param string $logChannel The Log Channel of this call
|
|
||||||
*
|
|
||||||
* @return void
|
* @return void
|
||||||
*/
|
*/
|
||||||
public function setup(string $logChannel): void
|
public function setup(): void
|
||||||
{
|
{
|
||||||
$this->setupContainerForLogger($logChannel);
|
|
||||||
$this->setupLegacyServiceLocator();
|
$this->setupLegacyServiceLocator();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -75,13 +71,6 @@ final class DiceContainer implements Container
|
||||||
$this->container = $this->container->addRule($name, $rule);
|
$this->container = $this->container->addRule($name, $rule);
|
||||||
}
|
}
|
||||||
|
|
||||||
private function setupContainerForLogger(string $logChannel): void
|
|
||||||
{
|
|
||||||
$this->container = $this->container->addRule(LoggerInterface::class, [
|
|
||||||
'constructParams' => [$logChannel],
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
|
|
||||||
private function setupLegacyServiceLocator(): void
|
private function setupLegacyServiceLocator(): void
|
||||||
{
|
{
|
||||||
DI::init($this->container);
|
DI::init($this->container);
|
||||||
|
|
Loading…
Add table
Reference in a new issue