@Test public void testNameSpaceInjection() throws Exception { ConfigurationManager.getConfigInstance().setProperty("testnamespace.serviceUrl.default", SERVICE_URI); Injector injector = LifecycleInjector.builder() .withBootstrapModule(new BootstrapModule() { @Override public void configure(BootstrapBinder binder) { binder.bind(String.class).annotatedWith(EurekaNamespace.class).toInstance("testnamespace."); } }) .build() .createInjector(); DefaultEurekaClientConfig clientConfig = injector.getInstance(DefaultEurekaClientConfig.class); List<String> serviceUrls = clientConfig.getEurekaServerServiceUrls("default"); assertThat(serviceUrls.get(0), is(equalTo(SERVICE_URI))); }
private Injector getInjector() throws ServiceManagerException { Injector injector = LifecycleInjector .builder() .withBootstrapModule(new BootstrapModule() { @Override public void configure(BootstrapBinder binder) { binder.bindConfigurationProvider().toInstance(new SystemConfigurationProvider()); } }) .withAdditionalBootstrapModules(new BootstrapModule() { @Override public void configure(BootstrapBinder binder) { CompositeConfigurationProvider compositeConfigurationProvider = new CompositeConfigurationProvider(); for (Properties property : getConfigurations()) { compositeConfigurationProvider.add(new PropertiesConfigurationProvider(property)); } binder.bindConfigurationProvider().toInstance(compositeConfigurationProvider); } }) .withModuleClasses(modules.getResources()) .build() .createInjector(); lifecycleManager = injector.getInstance(LifecycleManager.class); try { lifecycleManager.start(); } catch (Exception e) { throw new ServiceManagerException("unable to start the lifecycle manager", e); } return injector; }
private Injector getInjector() throws ServiceManagerException { Injector injector = LifecycleInjector .builder() .withBootstrapModule(new BootstrapModule() { @Override public void configure(BootstrapBinder binder) { binder.bindConfigurationProvider().toInstance(new SystemConfigurationProvider()); } }) .withAdditionalBootstrapModules(new BootstrapModule() { @Override public void configure(BootstrapBinder binder) { CompositeConfigurationProvider compositeConfigurationProvider = new CompositeConfigurationProvider(); for (Properties property : getConfigurations()) { compositeConfigurationProvider.add(new PropertiesConfigurationProvider(property)); } binder.bindConfigurationProvider().toInstance(compositeConfigurationProvider); } }) .withModuleClasses(modules.getResources()) .build() .createInjector(); lifecycleManager = injector.getInstance(LifecycleManager.class); try { lifecycleManager.start(); } catch (Exception e) { throw new ServiceManagerException("unable to start the lifecycle manager", e); } return injector; }
public static void create(AtomicReference<Injector> injector, final Properties properties, Module... modules) throws Exception { // Create the injector injector.set(LifecycleInjector.builder() .withBootstrapModule( new BootstrapModule() { @Override public void configure(BootstrapBinder binder) { binder.bindConfigurationProvider().toInstance( new PropertiesConfigurationProvider(properties)); } } ) .withModules( new RoutingPlugin(), new ServerSinkPlugin(), new SuroInputPlugin(), new SuroDynamicPropertyModule(), new SuroModule(), StatusServer.createJerseyServletModule() ) .withAdditionalModules(modules) .build().createInjector()); }
public Builder(final String name, final Logger logger) { this.lifecycleInjectorBuilder = LifecycleInjector.builder() .ignoringAllAutoBindClasses() .withBootstrapModule(bootstrapBinder -> { bootstrapBinder.disableAutoBinding(); bootstrapBinder.requireExactBindingAnnotations(); }); this.configModuleBuilder = new AutoBindConfigModule.Builder(name); this.serviceGraphModuleBuilder = new AutoBindServiceGraphModule.Builder(name, serviceGraph); setName(name); setLogger(logger); setServiceConfig(ConfigFactory.empty()); }