Skip to content

Commit 01b0bfe

Browse files
Fix index inference for requests with index/indices parameter (#8170) (#8172)
Co-authored-by: Florian Bernd <[email protected]>
1 parent 018c8b7 commit 01b0bfe

36 files changed

+1310
-45
lines changed

src/Elastic.Clients.Elasticsearch.Serverless/_Generated/Api/BulkRequest.g.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -164,7 +164,7 @@ public BulkRequestDescriptor(Elastic.Clients.Elasticsearch.Serverless.IndexName?
164164
{
165165
}
166166

167-
public BulkRequestDescriptor()
167+
public BulkRequestDescriptor() : this(typeof(TDocument))
168168
{
169169
}
170170

src/Elastic.Clients.Elasticsearch.Serverless/_Generated/Api/IndexManagement/AnalyzeIndexRequest.g.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ public AnalyzeIndexRequestDescriptor(Elastic.Clients.Elasticsearch.Serverless.In
121121
{
122122
}
123123

124-
public AnalyzeIndexRequestDescriptor()
124+
public AnalyzeIndexRequestDescriptor() : this(typeof(TDocument))
125125
{
126126
}
127127

src/Elastic.Clients.Elasticsearch.Serverless/_Generated/Api/IndexManagement/CreateIndexRequest.g.cs

+4
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,10 @@ public CreateIndexRequestDescriptor(Elastic.Clients.Elasticsearch.Serverless.Ind
112112
{
113113
}
114114

115+
public CreateIndexRequestDescriptor() : this(typeof(TDocument))
116+
{
117+
}
118+
115119
internal override ApiUrls ApiUrls => ApiUrlLookup.IndexManagementCreate;
116120

117121
protected override HttpMethod StaticHttpMethod => HttpMethod.PUT;

src/Elastic.Clients.Elasticsearch.Serverless/_Generated/Api/IndexManagement/RolloverRequest.g.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ public RolloverRequestDescriptor(Elastic.Clients.Elasticsearch.Serverless.IndexA
133133
{
134134
}
135135

136-
public RolloverRequestDescriptor(Elastic.Clients.Elasticsearch.Serverless.IndexAlias alias) : base(r => r.Required("alias", alias))
136+
public RolloverRequestDescriptor(Elastic.Clients.Elasticsearch.Serverless.IndexAlias alias) : this(alias, typeof(TDocument))
137137
{
138138
}
139139

src/Elastic.Clients.Elasticsearch.Serverless/_Generated/Api/MultiGetRequest.g.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@ public MultiGetRequestDescriptor(Elastic.Clients.Elasticsearch.Serverless.IndexN
165165
{
166166
}
167167

168-
public MultiGetRequestDescriptor()
168+
public MultiGetRequestDescriptor() : this(typeof(TDocument))
169169
{
170170
}
171171

src/Elastic.Clients.Elasticsearch.Serverless/_Generated/Api/MultiTermVectorsRequest.g.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ public MultiTermVectorsRequestDescriptor(Elastic.Clients.Elasticsearch.Serverles
198198
{
199199
}
200200

201-
public MultiTermVectorsRequestDescriptor()
201+
public MultiTermVectorsRequestDescriptor() : this(typeof(TDocument))
202202
{
203203
}
204204

src/Elastic.Clients.Elasticsearch.Serverless/_Generated/Api/TermsEnumRequest.g.cs

+4
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,10 @@ public TermsEnumRequestDescriptor(Elastic.Clients.Elasticsearch.Serverless.Index
100100
{
101101
}
102102

103+
public TermsEnumRequestDescriptor() : this(typeof(TDocument))
104+
{
105+
}
106+
103107
internal override ApiUrls ApiUrls => ApiUrlLookup.NoNamespaceTermsEnum;
104108

105109
protected override HttpMethod StaticHttpMethod => HttpMethod.POST;

src/Elastic.Clients.Elasticsearch.Serverless/_Generated/Client/ElasticsearchClient.Indices.g.cs

+23
Original file line numberDiff line numberDiff line change
@@ -423,6 +423,29 @@ public virtual Task<CreateIndexResponse> CreateAsync<TDocument>(Elastic.Clients.
423423
return DoRequestAsync<CreateIndexRequestDescriptor<TDocument>, CreateIndexResponse, CreateIndexRequestParameters>(descriptor, cancellationToken);
424424
}
425425

426+
/// <summary>
427+
/// <para>Creates an index with optional settings and mappings.</para>
428+
/// <para><see href="https://www.elastic.co/guide/en/elasticsearch/reference/8.13/indices-create-index.html">Learn more about this API in the Elasticsearch documentation.</see></para>
429+
/// </summary>
430+
public virtual Task<CreateIndexResponse> CreateAsync<TDocument>(CancellationToken cancellationToken = default)
431+
{
432+
var descriptor = new CreateIndexRequestDescriptor<TDocument>();
433+
descriptor.BeforeRequest();
434+
return DoRequestAsync<CreateIndexRequestDescriptor<TDocument>, CreateIndexResponse, CreateIndexRequestParameters>(descriptor, cancellationToken);
435+
}
436+
437+
/// <summary>
438+
/// <para>Creates an index with optional settings and mappings.</para>
439+
/// <para><see href="https://www.elastic.co/guide/en/elasticsearch/reference/8.13/indices-create-index.html">Learn more about this API in the Elasticsearch documentation.</see></para>
440+
/// </summary>
441+
public virtual Task<CreateIndexResponse> CreateAsync<TDocument>(Action<CreateIndexRequestDescriptor<TDocument>> configureRequest, CancellationToken cancellationToken = default)
442+
{
443+
var descriptor = new CreateIndexRequestDescriptor<TDocument>();
444+
configureRequest?.Invoke(descriptor);
445+
descriptor.BeforeRequest();
446+
return DoRequestAsync<CreateIndexRequestDescriptor<TDocument>, CreateIndexResponse, CreateIndexRequestParameters>(descriptor, cancellationToken);
447+
}
448+
426449
/// <summary>
427450
/// <para>Creates an index with optional settings and mappings.</para>
428451
/// <para><see href="https://www.elastic.co/guide/en/elasticsearch/reference/8.13/indices-create-index.html">Learn more about this API in the Elasticsearch documentation.</see></para>

src/Elastic.Clients.Elasticsearch.Serverless/_Generated/Client/ElasticsearchClient.g.cs

+23
Original file line numberDiff line numberDiff line change
@@ -3311,6 +3311,29 @@ public virtual Task<TermsEnumResponse> TermsEnumAsync<TDocument>(Elastic.Clients
33113311
return DoRequestAsync<TermsEnumRequestDescriptor<TDocument>, TermsEnumResponse, TermsEnumRequestParameters>(descriptor, cancellationToken);
33123312
}
33133313

3314+
/// <summary>
3315+
/// <para>The terms enum API can be used to discover terms in the index that begin with the provided string. It is designed for low-latency look-ups used in auto-complete scenarios.</para>
3316+
/// <para><see href="https://www.elastic.co/guide/en/elasticsearch/reference/current/search-terms-enum.html">Learn more about this API in the Elasticsearch documentation.</see></para>
3317+
/// </summary>
3318+
public virtual Task<TermsEnumResponse> TermsEnumAsync<TDocument>(CancellationToken cancellationToken = default)
3319+
{
3320+
var descriptor = new TermsEnumRequestDescriptor<TDocument>();
3321+
descriptor.BeforeRequest();
3322+
return DoRequestAsync<TermsEnumRequestDescriptor<TDocument>, TermsEnumResponse, TermsEnumRequestParameters>(descriptor, cancellationToken);
3323+
}
3324+
3325+
/// <summary>
3326+
/// <para>The terms enum API can be used to discover terms in the index that begin with the provided string. It is designed for low-latency look-ups used in auto-complete scenarios.</para>
3327+
/// <para><see href="https://www.elastic.co/guide/en/elasticsearch/reference/current/search-terms-enum.html">Learn more about this API in the Elasticsearch documentation.</see></para>
3328+
/// </summary>
3329+
public virtual Task<TermsEnumResponse> TermsEnumAsync<TDocument>(Action<TermsEnumRequestDescriptor<TDocument>> configureRequest, CancellationToken cancellationToken = default)
3330+
{
3331+
var descriptor = new TermsEnumRequestDescriptor<TDocument>();
3332+
configureRequest?.Invoke(descriptor);
3333+
descriptor.BeforeRequest();
3334+
return DoRequestAsync<TermsEnumRequestDescriptor<TDocument>, TermsEnumResponse, TermsEnumRequestParameters>(descriptor, cancellationToken);
3335+
}
3336+
33143337
/// <summary>
33153338
/// <para>The terms enum API can be used to discover terms in the index that begin with the provided string. It is designed for low-latency look-ups used in auto-complete scenarios.</para>
33163339
/// <para><see href="https://www.elastic.co/guide/en/elasticsearch/reference/current/search-terms-enum.html">Learn more about this API in the Elasticsearch documentation.</see></para>

0 commit comments

Comments
 (0)