Compare commits

...

5 Commits

Author SHA1 Message Date
jay b67436c44f remove has 2026-08-12 17:39:13 -04:00
jay 18deba3b66 update version 2026-08-12 16:18:44 -04:00
jay 713ba001e5 remove has 2026-08-12 16:14:18 -04:00
jay 3872996fa7 use APPLICATION_NAME 2026-08-12 15:49:35 -04:00
jay fecc73408a require vlucas/phpdotenv 2026-08-12 15:49:25 -04:00
2 changed files with 19 additions and 21 deletions
+8 -2
View File
@@ -15,10 +15,16 @@
], ],
"minimum-stability": "stable", "minimum-stability": "stable",
"require": { "require": {
"graham-campbell/result-type": ">=1.1.4",
"monolog/monolog": ">=3.10.0", "monolog/monolog": ">=3.10.0",
"phpoption/phpoption": ">=1.9.5",
"potter/console": ">=0.0.1", "potter/console": ">=0.0.1",
"potter/container": ">=0.0.1", "potter/container": ">=0.0.1",
"potter/event": ">=0.0.3", "potter/event": ">=0.0.1",
"psr/log": ">=3.0.2" "psr/log": ">=3.0.2",
"symfony/polyfill-ctype": ">=1.37.0",
"symfony/polyfill-mbstring": ">=1.38.2",
"symfony/polyfill-php80": ">=1.37.0",
"vlucas/phpdotenv": ">=5.6.4"
} }
} }
+10 -18
View File
@@ -18,41 +18,40 @@ trait Behaviour
private static function addLoggerBehaviour(Container $container): void private static function addLoggerBehaviour(Container $container): void
{ {
self::addLoggerEnvironment($container);
self::addLoggerHandler($container); self::addLoggerHandler($container);
self::addLogger($container); self::addLogger($container);
self::addLoggerSubscription($container); self::addLoggerSubscription($container);
} }
private static function addLoggerEnvironment(Container $container): void
{
static::getEnvironment($container)->required('APPLICATION_NAME');
}
private static function addLoggerHandler(Container $container): void private static function addLoggerHandler(Container $container): void
{ {
if ($container->has(Handler::class)) {
return; }
$container->addShared(Handler::class) $container->addShared(Handler::class)
->addArgument(\Potter\Console\Logger::class); ->addArgument(\Potter\Console\Logger::class);
} }
private static function addLoggerSubscription(Container $container): void private static function addLoggerSubscription(Container $container): void
{ {
if (!static::hasDispatcher($container)) {
return; }
$dispatcher = static::getDispatcher($container); $dispatcher = static::getDispatcher($container);
$dispatcher->subscribeTo('applicationStart', function (Event $event) { $dispatcher->subscribeTo('applicationStart', function (Event $event) {
$container = $event->getArgument('container'); $container = $event->getArgument('container');
if (!self::hasLogger($container)) { self::getLogger($container)->notice('Application start: ' . $_ENV['APPLICATION_NAME']); });
return; }
self::getLogger($container)->notice('Application start.'); });
$dispatcher->subscribeTo('applicationStop', function (Event $event) { $dispatcher->subscribeTo('applicationStop', function (Event $event) {
$container = $event->getArgument('container'); $container = $event->getArgument('container');
if (!self::hasLogger($container)) { self::getLogger($container)->notice('Application stop: ' . $_ENV['APPLICATION_NAME']); });
return; }
self::getLogger($container)->notice('Application stop.'); });
} }
abstract private static function getDispatcher(Container $container): \Potter\Event\Dispatcher; abstract private static function getDispatcher(Container $container): \Potter\Event\Dispatcher;
abstract private static function getEnvironment(Container $container): \Dotenv\Dotenv;
private static function getLogger(Container $container): Logger private static function getLogger(Container $container): Logger
{ {
return $container->get(Logger::class); return $container->get(Logger::class);
@@ -62,11 +61,4 @@ trait Behaviour
{ {
return [$container->get(Handler::class)]; return [$container->get(Handler::class)];
} }
abstract private static function hasDispatcher(Container $container): bool;
private static function hasLogger(Container $container): bool
{
return $container->has(Logger::class);
}
} }