/** * @Bean * @return CrawlerCommand */ public function command() { $beanFactory = \bitExpert\Disco\BeanFactoryRegistry::getInstance(); $bean = new CrawlerCommand(); $bean->setBeanFactory($beanFactory); return $bean; }
public function createDiscoInstance(bool $useAutoloader = false) : AnnotationBeanFactory { $config = new BeanFactoryConfiguration(sys_get_temp_dir()); if ($useAutoloader) { $config->setProxyAutoloader(new Autoloader(new FileLocator(sys_get_temp_dir()), new ClassNameInflector('Bench'))); } $disco = new AnnotationBeanFactory(BenchmarkConfiguration::class, [], $config); BeanFactoryRegistry::register($disco); return $disco; }
/** * @test */ public function retrievingProtectedBeanByAlias() { $this->beanFactory = new AnnotationBeanFactory(BeanConfigurationWithAliases::class); BeanFactoryRegistry::register($this->beanFactory); self::assertFalse($this->beanFactory->has('internalServiceWithAlias')); self::assertTrue($this->beanFactory->has('aliasIsPublicForInternalService')); self::assertInstanceOf(SampleService::class, $this->beanFactory->get('aliasIsPublicForInternalService')); }
/** * @Bean * @return \bitExpert\Adroit\Responder\Resolver\ContainerResponderResolver */ protected function containerResponderResolver() { $beanFactory = \bitExpert\Disco\BeanFactoryRegistry::getInstance(); return new ContainerResponderResolver($beanFactory); }
* file that was distributed with this source code. */ require __DIR__ . '/../config/config.inc.php'; // Configure logger infrastructure if (isset($APP_CONF['logger'], $APP_CONF['logger']['logfile'], $APP_CONF['logger']['level'])) { // configure the Simple Logging Facade for PSR-3 loggers with a Monolog backend \bitExpert\Slf4PsrLog\LoggerFactory::registerFactoryCallback(function ($channel) use($APP_CONF) { if (!\Monolog\Registry::hasLogger($channel)) { $handler = new \Monolog\Handler\StreamHandler($APP_CONF['logger']['logfile'], $APP_CONF['logger']['level']); $log = new \Monolog\Logger('name'); $log->pushHandler($handler); \Monolog\Registry::addLogger($log, $channel); return $log; } return \Monolog\Registry::getInstance($channel); }); } // Create Disco cache dir if (isset($APP_CONF['di'], $APP_CONF['di']['cache']) and !is_dir($APP_CONF['di']['cache'])) { @mkdir($APP_CONF['di']['cache'], 0777, true); } // Configure and set up the BeanFactory instance $config = new \bitExpert\Disco\BeanFactoryConfiguration($APP_CONF['di']['cache'], null, null, !$APP_CONF['di']['devMode']); $beanFactory = new \bitExpert\Disco\AnnotationBeanFactory($APP_CONF['di']['config'], $APP_CONF, $config); \bitExpert\Disco\BeanFactoryRegistry::register($beanFactory); $request = \Zend\Diactoros\ServerRequestFactory::fromGlobals(); $response = new \Zend\Diactoros\Response(); $beanFactory = \bitExpert\Disco\BeanFactoryRegistry::getInstance(); /** @var \bitExpert\Adrenaline\Adrenaline $app **/ $app = $beanFactory->get('webapp'); $app($request, $response);