/** * Creates a new {@link RestClient} using given {@link EsConfig}. * * @return {@link RestClient} for Elasticsearch connection */ public RestClient construct() { RestClientBuilder builder = RestClient.builder(esConfig.getHttpHosts()); if (esConfig.getMaxRetryTimeoutMillis() != null) { builder.setMaxRetryTimeoutMillis(esConfig.getMaxRetryTimeoutMillis()); } if (esConfig.getDefaultHeaders() != null) { builder.setDefaultHeaders(esConfig.getDefaultHeaders()); } if (esConfig.getFailureListener() != null) { builder.setFailureListener(esConfig.getFailureListener()); } if (esConfig.getHttpClientConfigCallback() != null) { builder.setHttpClientConfigCallback(esConfig.getHttpClientConfigCallback()); } if (esConfig.getRequestConfigCallback() != null) { builder.setRequestConfigCallback(esConfig.getRequestConfigCallback()); } if (esConfig.getPathPrefix() != null) { builder.setPathPrefix(esConfig.getPathPrefix()); } return builder.build(); } }
public static RestClient createClientWithDefaultHeaders() { RestClientBuilder clientBuilder = RestClient.builder(new HttpHost("localhost", 9200, "http")); Header[] defaultHeaders = new Header[2]; defaultHeaders[0] = new BasicHeader("COMPANY", "GAURAVBYTES"); defaultHeaders[1] = new BasicHeader("OWNER", "Gaurav Rai Mazra"); clientBuilder.setDefaultHeaders(defaultHeaders); clientBuilder.setFailureListener(failureListener()); return clientBuilder.build(); }
public static RestHighLevelClient newElasticsearchClient(List<HttpHost> hosts, String username, String password, boolean secureConnection, Supplier<KeyStore> trustStore) throws KeyStoreException, NoSuchAlgorithmException, KeyManagementException { final CredentialsProvider credentialsProvider = new BasicCredentialsProvider(); credentialsProvider.setCredentials(AuthScope.ANY, new UsernamePasswordCredentials(username, password)); final SSLContext sslContext = !secureConnection ? null : SSLContexts.custom().loadTrustMaterial(trustStore.get(), null).build(); final RestClientBuilder builder = RestClient.builder(Iterables.toArray(hosts, HttpHost.class)) .setHttpClientConfigCallback(httpClientBuilder -> httpClientBuilder .setSSLContext(sslContext) .setDefaultCredentialsProvider(credentialsProvider)) .setFailureListener(new RestClient.FailureListener() { @Override public void onFailure(HttpHost host) { Metrics.elasticsearchHostOffline().mark(); } }); return new RestHighLevelClient(builder); }
.setFailureListener(new RestClient.FailureListener(){ @Override public void onFailure(HttpHost host) {
.setRequestConfigCallback(requestConfigBuilder -> requestConfigBuilder.setConnectTimeout(5000) .setSocketTimeout((int) timeoutMs)) .setFailureListener(new RestClient.FailureListener() { @Override public void onFailure(Node node) {