1: <?php
2: 3: 4: 5: 6: 7: 8: 9:
10:
11: namespace Autarky\Logging;
12:
13: use Autarky\Providers\AbstractProvider;
14: use Autarky\Container\Factory\Definition;
15:
16: 17: 18: 19: 20:
21: class LoggingProvider extends AbstractProvider
22: {
23: 24: 25:
26: public function register()
27: {
28: $dic = $this->app->getContainer();
29:
30: $dic->define('Autarky\Logging\ChannelManager', function() {
31: return new ChannelManager();
32: });
33: $dic->share('Autarky\Logging\ChannelManager');
34:
35: $factory = new Definition(['Autarky\Logging\ChannelManager', 'getChannel']);
36: $factory->addScalarArgument('$channel', 'string', false, null);
37: $dic->define('Psr\Log\LoggerInterface', $factory);
38: }
39: }
40: