1212using Elastic . Esql . Execution ;
1313using Elastic . Esql . QueryModel ;
1414using Elastic . Transport ;
15+ using Elastic . Transport . Products . Elasticsearch ;
1516
1617#if NET10_0_OR_GREATER
1718using System . IO . Pipelines ;
@@ -37,7 +38,7 @@ public IEsqlResponse ExecuteQuery(string esql, EsqlParameters? parameters, objec
3738 var queryOptions = ResolveOptions ( options ) ;
3839 var request = BuildQueryRequest ( esql , parameters , queryOptions ) ;
3940 request . BeforeRequest ( ) ;
40- var response = _client . DoRequest < EsqlQueryRequest , StreamResponse , EsqlQueryRequestParameters > ( request ) ;
41+ var response = _client . DoRequest < EsqlQueryRequest , ElasticsearchStreamResponse , EsqlQueryRequestParameters > ( request ) ;
4142 return new EsqlTransportResponse ( response ) ;
4243 }
4344
@@ -46,8 +47,13 @@ public async Task<IEsqlAsyncResponse> ExecuteQueryAsync(string esql, EsqlParamet
4647 var queryOptions = ResolveOptions ( options ) ;
4748 var request = BuildQueryRequest ( esql , parameters , queryOptions ) ;
4849 request . BeforeRequest ( ) ;
49- var response = await _client . DoRequestAsync < EsqlQueryRequest , StreamResponse , EsqlQueryRequestParameters > ( request , cancellationToken )
50+ #if NET10_0_OR_GREATER
51+ var response = await _client . DoRequestAsync < EsqlQueryRequest , ElasticsearchPipeResponse , EsqlQueryRequestParameters > ( request , cancellationToken )
52+ . ConfigureAwait ( false ) ;
53+ #else
54+ var response = await _client . DoRequestAsync < EsqlQueryRequest , ElasticsearchStreamResponse , EsqlQueryRequestParameters > ( request , cancellationToken )
5055 . ConfigureAwait ( false ) ;
56+ #endif
5157 return new EsqlTransportAsyncResponse ( response ) ;
5258 }
5359
@@ -56,7 +62,7 @@ public IEsqlResponse SubmitAsyncQuery(string esql, EsqlParameters? parameters, o
5662 var queryOptions = ResolveOptions ( options ) ;
5763 var request = BuildAsyncQueryRequest ( esql , parameters , queryOptions , asyncOptions ) ;
5864 request . BeforeRequest ( ) ;
59- var response = _client . DoRequest < AsyncQueryRequest , StreamResponse , AsyncQueryRequestParameters > ( request ) ;
65+ var response = _client . DoRequest < AsyncQueryRequest , ElasticsearchStreamResponse , AsyncQueryRequestParameters > ( request ) ;
6066 return new EsqlTransportResponse ( response ) ;
6167 }
6268
@@ -65,8 +71,13 @@ public async Task<IEsqlAsyncResponse> SubmitAsyncQueryAsync(string esql, EsqlPar
6571 var queryOptions = ResolveOptions ( options ) ;
6672 var request = BuildAsyncQueryRequest ( esql , parameters , queryOptions , asyncOptions ) ;
6773 request . BeforeRequest ( ) ;
68- var response = await _client . DoRequestAsync < AsyncQueryRequest , StreamResponse , AsyncQueryRequestParameters > ( request , cancellationToken )
74+ #if NET10_0_OR_GREATER
75+ var response = await _client . DoRequestAsync < AsyncQueryRequest , ElasticsearchPipeResponse , AsyncQueryRequestParameters > ( request , cancellationToken )
6976 . ConfigureAwait ( false ) ;
77+ #else
78+ var response = await _client . DoRequestAsync < AsyncQueryRequest , ElasticsearchStreamResponse , AsyncQueryRequestParameters > ( request , cancellationToken )
79+ . ConfigureAwait ( false ) ;
80+ #endif
7081 return new EsqlTransportAsyncResponse ( response ) ;
7182 }
7283
@@ -77,7 +88,7 @@ public IEsqlResponse PollAsyncQuery(string queryId, object? options)
7788 if ( queryOptions ? . RequestConfiguration is not null )
7889 request . RequestConfiguration = queryOptions . RequestConfiguration ;
7990 request . BeforeRequest ( ) ;
80- var response = _client . DoRequest < AsyncQueryGetRequest , StreamResponse , AsyncQueryGetRequestParameters > ( request ) ;
91+ var response = _client . DoRequest < AsyncQueryGetRequest , ElasticsearchStreamResponse , AsyncQueryGetRequestParameters > ( request ) ;
8192 return new EsqlTransportResponse ( response ) ;
8293 }
8394
@@ -88,8 +99,13 @@ public async Task<IEsqlAsyncResponse> PollAsyncQueryAsync(string queryId, object
8899 if ( queryOptions ? . RequestConfiguration is not null )
89100 request . RequestConfiguration = queryOptions . RequestConfiguration ;
90101 request . BeforeRequest ( ) ;
91- var response = await _client . DoRequestAsync < AsyncQueryGetRequest , StreamResponse , AsyncQueryGetRequestParameters > ( request , cancellationToken )
102+ #if NET10_0_OR_GREATER
103+ var response = await _client . DoRequestAsync < AsyncQueryGetRequest , ElasticsearchPipeResponse , AsyncQueryGetRequestParameters > ( request , cancellationToken )
92104 . ConfigureAwait ( false ) ;
105+ #else
106+ var response = await _client . DoRequestAsync < AsyncQueryGetRequest , ElasticsearchStreamResponse , AsyncQueryGetRequestParameters > ( request , cancellationToken )
107+ . ConfigureAwait ( false ) ;
108+ #endif
93109 return new EsqlTransportAsyncResponse ( response ) ;
94110 }
95111
@@ -231,9 +247,9 @@ JsonValueKind.Number when element.TryGetInt64(out var l) => FieldValue.Long(l),
231247
232248internal sealed class EsqlTransportResponse : IEsqlResponse
233249{
234- private readonly StreamResponse _response ;
250+ private readonly ElasticsearchStreamResponse _response ;
235251
236- public EsqlTransportResponse ( StreamResponse response ) => _response = response ;
252+ public EsqlTransportResponse ( ElasticsearchStreamResponse response ) => _response = response ;
237253
238254 public Stream Body => _response . Body ;
239255
@@ -243,28 +259,21 @@ internal sealed class EsqlTransportResponse : IEsqlResponse
243259#if NET10_0_OR_GREATER
244260internal sealed class EsqlTransportAsyncResponse : IEsqlAsyncResponse
245261{
246- private readonly StreamResponse _response ;
262+ private readonly ElasticsearchPipeResponse _response ;
247263
248- public EsqlTransportAsyncResponse ( StreamResponse response )
249- {
250- _response = response ;
251- Body = PipeReader . Create ( response . Body ) ;
252- }
264+ public EsqlTransportAsyncResponse ( ElasticsearchPipeResponse response ) => _response = response ;
253265
254- public PipeReader Body { get ; }
266+ public PipeReader Body => _response . Body ;
255267
256- public async ValueTask DisposeAsync ( )
257- {
258- await Body . CompleteAsync ( ) . ConfigureAwait ( false ) ;
259- _response . Dispose ( ) ;
260- }
268+ public async ValueTask DisposeAsync ( ) =>
269+ await _response . DisposeAsync ( ) . ConfigureAwait ( false ) ;
261270}
262271#else
263272internal sealed class EsqlTransportAsyncResponse : IEsqlAsyncResponse
264273{
265- private readonly StreamResponse _response ;
274+ private readonly ElasticsearchStreamResponse _response ;
266275
267- public EsqlTransportAsyncResponse ( StreamResponse response ) => _response = response ;
276+ public EsqlTransportAsyncResponse ( ElasticsearchStreamResponse response ) => _response = response ;
268277
269278 public Stream Body => _response . Body ;
270279
0 commit comments