/** * @param Container $container */ public static function setupLogger(Container $container) { $container->add('logger', function () use($container) { $logger = new Logger('Chat'); $type = $container->get('config')->logger ?: STDOUT; $logger->pushHandler(new StreamHandler($type)); return $logger; }, true); }
/** * @param Container $container */ public static function setupHttpClient($container) { $container->add('httpClient', function () use($container) { $dnsResolverFactory = new Factory(); $loop = $container->get('eventloop'); $dnsResolver = $dnsResolverFactory->createCached('8.8.8.8', $loop); $factory = new HttpFactory(); $client = $factory->create($loop, $dnsResolver); return $client; }, true); }
public function testExtendsThrowsExceptionWhenModifyingAnExistingSingleton() { $this->setExpectedException('Orno\\Di\\Exception\\ServiceNotExtendableException'); $c = new Container(); $c->singleton('service', 'OrnoTest\\Assets\\Baz'); $c->get('service'); $c->extend('service'); }
/** * @return Cache */ public function getCache() { return $this->container->get('cache'); }