Skip to content

Commit 6304e32

Browse files
swallezl-trotta
authored andcommitted
Refactor client builder to transport configuration
1 parent c1a8656 commit 6304e32

File tree

9 files changed

+376
-346
lines changed

9 files changed

+376
-346
lines changed

java-client/src/main/java/co/elastic/clients/elasticsearch/ElasticsearchAsyncClient.java

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
package co.elastic.clients.elasticsearch;
2121

2222
import co.elastic.clients.ApiClient;
23-
import co.elastic.clients.elasticsearch._helpers.builders.ElasticsearchClientBuilderBase;
2423
import co.elastic.clients.elasticsearch._types.ErrorResponse;
2524
import co.elastic.clients.elasticsearch.async_search.ElasticsearchAsyncSearchAsyncClient;
2625
import co.elastic.clients.elasticsearch.autoscaling.ElasticsearchAutoscalingAsyncClient;
@@ -146,6 +145,7 @@
146145
import co.elastic.clients.elasticsearch.watcher.ElasticsearchWatcherAsyncClient;
147146
import co.elastic.clients.elasticsearch.xpack.ElasticsearchXpackAsyncClient;
148147
import co.elastic.clients.transport.ElasticsearchTransport;
148+
import co.elastic.clients.transport.ElasticsearchTransportConfig;
149149
import co.elastic.clients.transport.Endpoint;
150150
import co.elastic.clients.transport.JsonEndpoint;
151151
import co.elastic.clients.transport.Transport;
@@ -178,16 +178,15 @@
178178
* Client for the namespace.
179179
*/
180180
public class ElasticsearchAsyncClient extends ApiClient<ElasticsearchTransport, ElasticsearchAsyncClient> {
181-
public static class Builder extends ElasticsearchClientBuilderBase<ElasticsearchAsyncClient> {
182-
@Override
183-
public ElasticsearchAsyncClient build() {
184-
return ElasticsearchClientBuilderBase.buildAsync(this);
185-
}
186-
}
187181

188182
public static ElasticsearchAsyncClient of(
189-
Function<ElasticsearchClientBuilderBase, ElasticsearchClientBuilderBase> fn) {
190-
return ElasticsearchClientBuilderBase.buildAsync(fn.apply(new ElasticsearchAsyncClient.Builder()));
183+
Function<ElasticsearchTransportConfig.Builder, ElasticsearchTransportConfig.Builder> fn) {
184+
return new ElasticsearchAsyncClient(
185+
fn.apply(new ElasticsearchTransportConfig.Builder()).build().buildTransport());
186+
}
187+
188+
public ElasticsearchAsyncClient(ElasticsearchTransportConfig config) {
189+
this(config.buildTransport());
191190
}
192191

193192
public ElasticsearchAsyncClient(ElasticsearchTransport transport) {

java-client/src/main/java/co/elastic/clients/elasticsearch/ElasticsearchClient.java

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
package co.elastic.clients.elasticsearch;
2121

2222
import co.elastic.clients.ApiClient;
23-
import co.elastic.clients.elasticsearch._helpers.builders.ElasticsearchClientBuilderBase;
2423
import co.elastic.clients.elasticsearch._types.ElasticsearchException;
2524
import co.elastic.clients.elasticsearch._types.ErrorResponse;
2625
import co.elastic.clients.elasticsearch.async_search.ElasticsearchAsyncSearchClient;
@@ -147,6 +146,7 @@
147146
import co.elastic.clients.elasticsearch.watcher.ElasticsearchWatcherClient;
148147
import co.elastic.clients.elasticsearch.xpack.ElasticsearchXpackClient;
149148
import co.elastic.clients.transport.ElasticsearchTransport;
149+
import co.elastic.clients.transport.ElasticsearchTransportConfig;
150150
import co.elastic.clients.transport.Endpoint;
151151
import co.elastic.clients.transport.JsonEndpoint;
152152
import co.elastic.clients.transport.Transport;
@@ -179,15 +179,14 @@
179179
* Client for the namespace.
180180
*/
181181
public class ElasticsearchClient extends ApiClient<ElasticsearchTransport, ElasticsearchClient> {
182-
public static class Builder extends ElasticsearchClientBuilderBase<ElasticsearchClient> {
183-
@Override
184-
public ElasticsearchClient build() {
185-
return ElasticsearchClientBuilderBase.buildSync(this);
186-
}
182+
183+
public static ElasticsearchClient of(
184+
Function<ElasticsearchTransportConfig.Builder, ElasticsearchTransportConfig.Builder> fn) {
185+
return new ElasticsearchClient(fn.apply(new ElasticsearchTransportConfig.Builder()).build().buildTransport());
187186
}
188187

189-
public static ElasticsearchClient of(Function<ElasticsearchClientBuilderBase, ElasticsearchClientBuilderBase> fn) {
190-
return ElasticsearchClientBuilderBase.buildSync(fn.apply(new ElasticsearchClient.Builder()));
188+
public ElasticsearchClient(ElasticsearchTransportConfig config) {
189+
this(config.buildTransport());
191190
}
192191

193192
public ElasticsearchClient(ElasticsearchTransport transport) {

java-client/src/main/java/co/elastic/clients/elasticsearch/_helpers/builders/ElasticsearchClientBuilderBase.java

Lines changed: 0 additions & 276 deletions
This file was deleted.

0 commit comments

Comments
 (0)