implement
This commit is contained in:
@@ -0,0 +1,38 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Potter\Logger;
|
||||||
|
|
||||||
|
use \Potter\Container;
|
||||||
|
|
||||||
|
trait Behaviour
|
||||||
|
{
|
||||||
|
abstract private static function addConsoleBehaviour(Container $container): void;
|
||||||
|
|
||||||
|
private static function addLogger(Container $container): void
|
||||||
|
{
|
||||||
|
self::addConsoleBehaviour($container);
|
||||||
|
self::addLoggerHandlers($container);
|
||||||
|
$container->addShared(Logger::class)
|
||||||
|
->addArgument(static::class)
|
||||||
|
->addArgument(self::getLoggerHandlers($container));
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function addLoggerBehaviour(Container $container): void
|
||||||
|
{
|
||||||
|
self::addLogger($container);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function addLoggerHandlers(Container $container): void
|
||||||
|
{
|
||||||
|
$container->addShared(Handler::class)
|
||||||
|
->addArgument(self::getLoggerHandlers($container));
|
||||||
|
}
|
||||||
|
|
||||||
|
private static function getLoggerHandlers(Container $container): array
|
||||||
|
{
|
||||||
|
return [$container->get(Handler::class)];
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Potter\Logger;
|
||||||
|
|
||||||
|
final class Handler extends \Monolog\Handler\PsrHandler
|
||||||
|
{ }
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
declare(strict_types=1);
|
||||||
|
|
||||||
|
namespace Potter\Logger;
|
||||||
|
|
||||||
|
final class Logger extends \Monolog\Logger
|
||||||
|
{ }
|
||||||
Reference in New Issue
Block a user