public Module getModule() { return binder -> { binder.bind(ThriftHeaderProvider.class).to(DefaultThriftHeaderProvider.class).in(SINGLETON); driftClientBinder(binder) .bindDriftClient(PrestoThriftService.class) .withAddressSelector(extendedSimpleAddressSelector()); }; } }
@Override public void configure(Binder binder) { driftClientBinder(binder) .bindDriftClient(PrestoThriftService.class) .withExceptionClassifier(t -> { if (t instanceof PrestoThriftServiceException) { boolean retryable = ((PrestoThriftServiceException) t).isRetryable(); return new ExceptionClassification(Optional.of(retryable), HostStatus.NORMAL); } return NORMAL_EXCEPTION; }); binder.bind(ThriftConnector.class).in(Scopes.SINGLETON); binder.bind(ThriftMetadata.class).in(Scopes.SINGLETON); binder.bind(ThriftSplitManager.class).in(Scopes.SINGLETON); binder.bind(ThriftPageSourceProvider.class).in(Scopes.SINGLETON); configBinder(binder).bindConfig(ThriftConnectorConfig.class); binder.bind(ThriftSessionProperties.class).in(Scopes.SINGLETON); binder.bind(ThriftIndexProvider.class).in(Scopes.SINGLETON); binder.bind(ThriftConnectorStats.class).in(Scopes.SINGLETON); newExporter(binder).export(ThriftConnectorStats.class) .as(generatedNameOf(ThriftConnectorStats.class, connectorId)); }
public <T> DriftClientBindingBuilder bindDriftClient(Class<T> clientInterface, Class<? extends Annotation> annotationType) { String configPrefix = getServiceName(clientInterface); if (annotationType != DefaultClient.class) { configPrefix += "." + annotationType.getSimpleName(); } return bindDriftClient(clientInterface, configPrefix, annotationType); }
public <T> DriftClientBindingBuilder bindDriftClient(Class<T> clientInterface) { String configPrefix = getServiceName(clientInterface); return bindDriftClient(clientInterface, configPrefix, DefaultClient.class); }
public <T> DriftClientBindingBuilder bindDriftClient(Class<T> clientInterface, Class<? extends Annotation> annotationType) { String configPrefix = getServiceName(clientInterface); if (annotationType != DefaultClient.class) { configPrefix += "." + annotationType.getSimpleName(); } return bindDriftClient(clientInterface, configPrefix, annotationType); }
public <T> DriftClientBindingBuilder bindDriftClient(Class<T> clientInterface) { String configPrefix = getServiceName(clientInterface); return bindDriftClient(clientInterface, configPrefix, DefaultClient.class); }
public Module getModule() { return binder -> { binder.bind(ThriftHeaderProvider.class).to(DefaultThriftHeaderProvider.class).in(SINGLETON); driftClientBinder(binder) .bindDriftClient(PrestoThriftService.class) .withAddressSelector(extendedSimpleAddressSelector()); }; } }
@Override public void configure(Binder binder) { driftClientBinder(binder) .bindDriftClient(PrestoThriftService.class) .withExceptionClassifier(t -> { if (t instanceof PrestoThriftServiceException) { boolean retryable = ((PrestoThriftServiceException) t).isRetryable(); return new ExceptionClassification(Optional.of(retryable), HostStatus.NORMAL); } return NORMAL_EXCEPTION; }); binder.bind(ThriftConnector.class).in(Scopes.SINGLETON); binder.bind(ThriftMetadata.class).in(Scopes.SINGLETON); binder.bind(ThriftSplitManager.class).in(Scopes.SINGLETON); binder.bind(ThriftPageSourceProvider.class).in(Scopes.SINGLETON); configBinder(binder).bindConfig(ThriftConnectorConfig.class); binder.bind(ThriftSessionProperties.class).in(Scopes.SINGLETON); binder.bind(ThriftIndexProvider.class).in(Scopes.SINGLETON); binder.bind(ThriftConnectorStats.class).in(Scopes.SINGLETON); newExporter(binder).export(ThriftConnectorStats.class).withGeneratedName(); }
.toInstance(statsFactory), binder -> driftClientBinder(binder) .bindDriftClient(Client.class) .withAddressSelector(new MockAddressSelector()) .withExceptionClassifier(clientClassifier), binder -> driftClientBinder(binder) .bindDriftClient(Client.class, CustomClient.class) .withAddressSelector(new MockAddressSelector()) .withExceptionClassifier(customClientClassifier));
new TestingJmxModule(), transportModule, binder -> driftClientBinder(binder).bindDriftClient(DriftScribe.class) .withAddressSelector(addressSelector) .withMethodInvocationFilter(staticFilterBinder(filters)), binder -> driftClientBinder(binder).bindDriftClient(DriftScribe.class, CustomClient.class) .withAddressSelector(addressSelector) .withMethodInvocationFilter(staticFilterBinder(filters)),
.toInstance(statsFactory), binder -> driftClientBinder(binder) .bindDriftClient(Client.class) .withAddressSelector(new MockAddressSelector()) .withMethodInvocationFilter(staticFilterBinder(passThroughFilter, shortCircuitFilter)) .withExceptionClassifier(clientClassifier), binder -> driftClientBinder(binder) .bindDriftClient(Client.class, CustomClient.class) .withAddressSelector(new MockAddressSelector()) .withMethodInvocationFilter(staticFilterBinder(passThroughFilter, shortCircuitFilter))
driftServerBinder(binder).bindService(MismatchServiceHandler.class); driftServerBinder(binder).bindService(ThrowingServiceHandler.class); driftClientBinder(binder).bindDriftClient(EchoService.class).withAddressSelector(simpleAddressSelector()); driftClientBinder(binder).bindDriftClient(MismatchService.class).withAddressSelector(simpleAddressSelector()); driftClientBinder(binder).bindDriftClient(ThrowingService.class).withAddressSelector(simpleAddressSelector()) .withExceptionClassifier(t -> { if (t instanceof ExampleException) {