@Override public void configure(Binder binder) { httpClientBinder(binder) .bindHttpClient("failure-detector", ForFailureDetector.class) .withTracing(); configBinder(binder).bindConfig(FailureDetectorConfig.class); binder.bind(HeartbeatFailureDetector.class).in(Scopes.SINGLETON); binder.bind(FailureDetector.class) .to(HeartbeatFailureDetector.class) .in(Scopes.SINGLETON); ExportBinder.newExporter(binder) .export(HeartbeatFailureDetector.class) .withGeneratedName(); } }
newExporter(binder).export(DiscoveryNodeManager.class).withGeneratedName(); httpClientBinder(binder).bindHttpClient("node-manager", ForNodeManager.class) .withTracing() .withConfigDefaults(config -> { config.setIdleTimeout(new Duration(30, SECONDS)); .withTracing() .withFilter(GenerateTraceTokenRequestFilter.class) .withConfigDefaults(config -> {
binder.bind(ClusterMemoryPoolManager.class).to(ClusterMemoryManager.class).in(Scopes.SINGLETON); httpClientBinder(binder).bindHttpClient("memoryManager", ForMemoryManager.class) .withTracing() .withConfigDefaults(config -> { config.setIdleTimeout(new Duration(30, SECONDS)); .withTracing() .withFilter(GenerateTraceTokenRequestFilter.class) .withConfigDefaults(config -> {
binder.bind(ClusterMemoryPoolManager.class).to(ClusterMemoryManager.class).in(Scopes.SINGLETON); httpClientBinder(binder).bindHttpClient("memoryManager", ForMemoryManager.class) .withTracing() .withConfigDefaults(config -> { config.setIdleTimeout(new Duration(30, SECONDS)); .withTracing() .withFilter(GenerateTraceTokenRequestFilter.class) .withConfigDefaults(config -> {
binder.bind(ClusterMemoryPoolManager.class).to(ClusterMemoryManager.class).in(Scopes.SINGLETON); httpClientBinder(binder).bindHttpClient("memoryManager", ForMemoryManager.class) .withTracing() .withConfigDefaults(config -> { config.setIdleTimeout(new Duration(30, SECONDS)); .withTracing() .withFilter(GenerateTraceTokenRequestFilter.class) .withConfigDefaults(config -> {
.withTracing() .withConfigDefaults(config -> { config.setIdleTimeout(new Duration(2, SECONDS));
@Test public void testBindingMultipleFiltersAndClients() throws Exception { Injector injector = new Bootstrap( binder -> { httpClientBinder(binder).bindHttpClient("foo", FooClient.class) .withFilter(TestingRequestFilter.class) .withFilter(AnotherHttpRequestFilter.class) .withTracing(); httpClientBinder(binder).bindHttpClient("bar", BarClient.class) .withFilter(TestingRequestFilter.class) .addFilterBinding().to(AnotherHttpRequestFilter.class); }, new TraceTokenModule()) .quiet() .strictConfig() .initialize(); assertFilterCount(injector.getInstance(Key.get(HttpClient.class, FooClient.class)), 3); assertFilterCount(injector.getInstance(Key.get(HttpClient.class, BarClient.class)), 2); }
@Override public void configure(Binder binder) { httpClientBinder(binder) .bindHttpClient("failure-detector", ForFailureDetector.class) .withPrivateIoThreadPool() .withTracing(); configBinder(binder).bindConfig(FailureDetectorConfig.class); binder.bind(HeartbeatFailureDetector.class).in(Scopes.SINGLETON); binder.bind(FailureDetector.class) .to(HeartbeatFailureDetector.class) .in(Scopes.SINGLETON); ExportBinder.newExporter(binder) .export(HeartbeatFailureDetector.class) .withGeneratedName(); } }
@Test public void testBindingMultipleFiltersAndClients() throws Exception { Injector injector = new Bootstrap( binder -> { httpClientBinder(binder).bindHttpClient("foo", FooClient.class) .withFilter(TestingRequestFilter.class) .withFilter(AnotherHttpRequestFilter.class) .withTracing(); httpClientBinder(binder).bindHttpClient("bar", BarClient.class) .withFilter(TestingRequestFilter.class) .addFilterBinding().to(AnotherHttpRequestFilter.class); }, new TraceTokenModule()) .quiet() .strictConfig() .initialize(); assertFilterCount(injector.getInstance(Key.get(HttpClient.class, FooClient.class)), 3); assertFilterCount(injector.getInstance(Key.get(HttpClient.class, BarClient.class)), 2); }
@Override public void configure(Binder binder) { httpClientBinder(binder) .bindHttpClient("failure-detector", ForFailureDetector.class) .withTracing(); configBinder(binder).bindConfig(FailureDetectorConfig.class); binder.bind(HeartbeatFailureDetector.class).in(Scopes.SINGLETON); binder.bind(FailureDetector.class) .to(HeartbeatFailureDetector.class) .in(Scopes.SINGLETON); ExportBinder.newExporter(binder) .export(HeartbeatFailureDetector.class) .withGeneratedName(); } }
@Override public void configure(Binder binder) { httpClientBinder(binder) .bindHttpClient("failure-detector", ForFailureDetector.class) .withTracing(); configBinder(binder).bindConfig(FailureDetectorConfig.class); binder.bind(HeartbeatFailureDetector.class).in(Scopes.SINGLETON); binder.bind(FailureDetector.class) .to(HeartbeatFailureDetector.class) .in(Scopes.SINGLETON); ExportBinder.newExporter(binder) .export(HeartbeatFailureDetector.class) .withGeneratedName(); } }
@Test public void testBindClientWithFilter() throws Exception { Injector injector = new Bootstrap( binder -> httpClientBinder(binder).bindHttpClient("foo", FooClient.class) .withFilter(TestingRequestFilter.class) .withFilter(AnotherHttpRequestFilter.class) .withTracing(), new TraceTokenModule()) .quiet() .strictConfig() .initialize(); HttpClient httpClient = injector.getInstance(Key.get(HttpClient.class, FooClient.class)); assertFilterCount(httpClient, 3); }
@Test public void testBindClientWithFilter() throws Exception { Injector injector = new Bootstrap( binder -> httpClientBinder(binder).bindHttpClient("foo", FooClient.class) .withFilter(TestingRequestFilter.class) .withFilter(AnotherHttpRequestFilter.class) .withTracing(), new TraceTokenModule()) .quiet() .strictConfig() .initialize(); HttpClient httpClient = injector.getInstance(Key.get(HttpClient.class, FooClient.class)); assertFilterCount(httpClient, 3); }
@Override public void configure(Binder binder) { jaxrsBinder(binder).bind(TestResource.class); httpClientBinder(binder) .bindHttpClient("test", GenerateTokenFilterTest.class) .withTracing() .withFilter(GenerateTraceTokenRequestFilter.class); } }
@Override public void configure(Binder binder) { httpClientBinder(binder).bindHttpClient("foo", FooClient.class) .withFilter(TestingRequestFilter.class) .withFilter(AnotherHttpRequestFilter.class) .withTracing(); } },
@Override public void configure(Binder binder) { httpClientBinder(binder).bindHttpClient("foo", FooClient.class) .withFilter(TestingRequestFilter.class) .withFilter(AnotherHttpRequestFilter.class) .withTracing(); HttpClientBindingBuilder builder = httpClientBinder(binder).bindHttpClient("bar", BarClient.class); builder.withFilter(TestingRequestFilter.class); builder.addFilterBinding().to(AnotherHttpRequestFilter.class); } },
@Override public void configure(Binder binder) { jaxrsBinder(binder).bind(TestResource.class); httpClientBinder(binder) .bindHttpClient("test", GenerateTokenFilterTest.class) .withTracing() .withFilter(GenerateTraceTokenRequestFilter.class); } }
@Override public void configure(Binder binder) { httpClientBinder(binder).bindAsyncHttpClient("foo", FooClient.class) .withFilter(TestingRequestFilter.class) .withFilter(AnotherHttpRequestFilter.class) .withTracing(); } },
@Override public void configure(Binder binder) { httpClientBinder(binder).bindHttpClient("foo", FooClient.class) .withFilter(TestingRequestFilter.class) .withFilter(AnotherHttpRequestFilter.class) .withTracing(); HttpClientBindingBuilder builder = httpClientBinder(binder).bindHttpClient("bar", BarClient.class); builder.withFilter(TestingRequestFilter.class); builder.addFilterBinding().to(AnotherHttpRequestFilter.class); } },
@Override public void configure(Binder binder) { jaxrsBinder(binder).bind(TestResource.class); httpClientBinder(binder) .bindHttpClient("test", GenerateTokenFilterTest.class) .withTracing() .withFilter(GenerateTraceTokenRequestFilter.class); } }