/** * Returns a Provider for a configuration bean. This method should be used in Modules * that require access to configuration. * @param clazz The class of the Configuration bean. * @return A provider. * @see Config#getBean(String, Class) */ public static <TYPE> Provider<TYPE> of(final Class<TYPE> clazz, @Nullable final Map<String, String> overrides) { return of(null, clazz, overrides); }
/** * Returns a Provider for a configuration bean. This method should be used in Modules * that require access to configuration. * @param <TYPE> The type of the Configuration bean. * @param clazz The class of the Configuration bean. * @return A provider. */ public static <TYPE> Provider<TYPE> of(final Class<TYPE> clazz) { return new ConfigProvider<TYPE>(null, clazz, null); }
@Test public void testConfigThenExport() throws Exception { provider.setConfig(config); provider.setExporter(exporter); ObjectName beanName = new ObjectName("com.nesscomputing.config:n0=com,n1=nesscomputing,n2=config,n3=TestConfigProvider$MyBean"); Assert.assertEquals("something", server.getAttribute(beanName, "x")); }
@Test public void testExportThenConfig() throws Exception { provider.setExporter(exporter); provider.setConfig(config); ObjectName beanName = new ObjectName("com.nesscomputing.config:n0=com,n1=nesscomputing,n2=config,n3=TestConfigProvider$MyBean"); Assert.assertEquals("something", server.getAttribute(beanName, "x")); } }
@Override public void configure() { bind (JvmPauseAlarm.class).asEagerSingleton(); bind (JvmPauseAlarmConfig.class).toProvider(ConfigProvider.of(JvmPauseAlarmConfig.class)).in(Scopes.SINGLETON); }
/** * Returns a Provider for a configuration bean. This method should be used in Modules * that require access to configuration. * @param <TYPE> The type of the Configuration bean. * @param prefix The Config bean prefix, as referenced below (may be null) * @param clazz The class of the Configuration bean. * @return A provider. * @see Config#getBean(String, Class) */ public static <TYPE> Provider<TYPE> of(@Nullable final String prefix, final Class<TYPE> clazz) { return new ConfigProvider<TYPE>(prefix, clazz, null); }
@Override public void configureServlets() { bind (JolokiaConfig.class).toProvider(ConfigProvider.of(JolokiaConfig.class)); bind (HttpServlet.class).annotatedWith(JOLOKIA_SERVLET).toProvider(JolokiaServletProvider.class).in(Scopes.SINGLETON); serve("/jolokia/*").with(Key.get(HttpServlet.class, JOLOKIA_SERVLET)); configureRestrictor(); }
/** * Returns a Provider for a configuration bean. This method should be used in Modules * that require access to configuration. * @param <TYPE> The type of the Configuration bean. * @param prefix The Config bean prefix, as referenced below (may be null) * @param clazz The class of the Configuration bean. * @return A provider. * @see Config#getBean(String, Class) */ public static <TYPE> Provider<TYPE> of(@Nullable final String prefix, final Class<TYPE> clazz, @Nullable final Map<String, String> overrides) { return new ConfigProvider<TYPE>(prefix, clazz, overrides); }
@Override public void configure(final Binder binder) { binder.bind(NessEventConfig.class).toProvider(ConfigProvider.of(NessEventConfig.class)).in(Scopes.SINGLETON); } });
@Override public void configure(final Binder binder) { binder.bind(NessEventConfig.class).toProvider(ConfigProvider.of(NessEventConfig.class)).in(Scopes.SINGLETON); } });
@Override public void configure() { bind(NessEventConfig.class).toProvider(ConfigProvider.of(NessEventConfig.class)).in(Scopes.SINGLETON); bind(NessEventDispatcher.class).to(InternalEventDispatcher.class).in(Scopes.SINGLETON); bind(NessEventSender.class).in(Scopes.SINGLETON); bind(InternalEventDispatcher.class).in(Scopes.SINGLETON); bind(InternalLocalEventTransmitter.class).in(Scopes.SINGLETON); NessEventModule.bindEventTransmitter(binder(), "local").to(InternalLocalEventTransmitter.class).in(Scopes.SINGLETON); }
@Override public void configure() { bind(DiscoveryClientConfig.class).toProvider(ConfigProvider.of(DiscoveryClientConfig.class)).in(Scopes.SINGLETON); bind(ServiceURIConverter.class).in(Scopes.SINGLETON); if (readOnly) { bind(ReadOnlyDiscoveryClient.class).to(ReadOnlyDiscoveryClientImpl.class).in(Scopes.SINGLETON); } else { bind(DiscoveryClient.class).to(DiscoveryClientImpl.class).in(Scopes.SINGLETON); bind(ReadOnlyDiscoveryClient.class).to(DiscoveryClient.class).in(Scopes.SINGLETON); bind(ServiceAnnouncer.class).asEagerSingleton(); } HttpClientModule.bindNewObserver(binder()).to(DiscoveryServiceInterceptor.class); }
@Override public void configure(final Binder binder) { binder.bind(NessEventConfig.class).toProvider(ConfigProvider.of(NessEventConfig.class)).in(Scopes.SINGLETON); } });
@Override public void configure() { final Map<String, String> optionMap = Collections.singletonMap("httpclient_name", clientName); final Annotation annotation = Names.named(clientName); bind(HttpClientDefaults.class).annotatedWith(annotation).toProvider(ConfigProvider.of(null, HttpClientDefaults.class, optionMap)).in(Scopes.SINGLETON); bind(HttpClientFactory.class).annotatedWith(annotation).toProvider(new ApacheHttpClient4FactoryProvider(annotation, observerGroups)).in(Scopes.SINGLETON); bind(HttpClient.class).annotatedWith(annotation).toProvider(new HttpClientProvider(annotation)).asEagerSingleton(); MapBinder.newMapBinder(binder(), HttpClientObserverGroup.class, HttpClientObserver.class, Names.named(OBSERVER_GROUP)).permitDuplicates(); MapBinder.newMapBinder(binder(), HttpClientObserverGroup.class, HttpClientObserverGroup.class, Names.named(INHERIT_MAP)).permitDuplicates(); }
@Override public void configureServlets() { // Tracking token setup bind (TrackingConfig.class).toProvider(ConfigProvider.of(TrackingConfig.class)).in(Scopes.SINGLETON); bind (TrackingUUIDProvider.class).in(Scopes.SINGLETON); // Bind the TrackingToken in the right scope. bind(TrackingToken.class).in(ThreadDelegatedScope.SCOPE); // Hook up tracking token to the HttpClient. HttpClientModule.bindNewObserver(binder(), HttpClientObserverGroup.PLATFORM_INTERNAL).to(HttpClientTrackingObserver.class); bind(TrackingFilter.class).in(Scopes.SINGLETON); filter(pattern).through(TrackingFilter.class); } }
@Override public void configure() { final DiscoveryClient client = MockedDiscoveryClient.builder() .addServiceInformation(ServiceInformation.forService(serviceName, serviceType, serviceScheme, serviceAddress, servicePort)) .build(); bind(DiscoveryClient.class).toInstance(client); bind(ReadOnlyDiscoveryClient.class).toInstance(client); bind(DiscoveryClientConfig.class).toProvider(ConfigProvider.of(DiscoveryClientConfig.class)).in(Scopes.SINGLETON); bind(ServiceURIConverter.class).in(Scopes.SINGLETON); HttpClientModule.bindNewObserver(binder()).to(DiscoveryServiceInterceptor.class); } }
@Override protected void configure() { install (ConfigModule.forTesting()); bind (TestConfig.class).toProvider(ConfigProvider.of(TestConfig.class)); } });
@Override protected void configure() { bind (MBeanServer.class).toInstance(server); install (ConfigModule.forTesting("test.x", "foo", "test.z", "10s")); bind (MyBean.class).toProvider(ConfigProvider.of(MyBean.class)); } }).injectMembers(this);
@Override protected void configure() { binder().requireExplicitBindings(); install (ConfigModule.forTesting("test.x", "foo", "test.z", "10s")); bind (MyBean.class).toProvider(ConfigProvider.of(MyBean.class)); } }).injectMembers(this);
@Before public void setUp() { config = Config.getEmptyConfig(); server = new TestingMBeanServer(); exporter = new ConfigJmxExporter(config); exporter.setMBeanServer(server); provider = (ConfigProvider<MyBean>) ConfigProvider.of(MyBean.class); }