Skip to content

Commit 5082ece

Browse files
committed
Add SupportsBody
This commit adds SupportsBody to IRequestParameters. (cherry picked from commit c4146ec)
1 parent 2af48ca commit 5082ece

31 files changed

+419
-175
lines changed

src/ApiGenerator/Views/LowLevel/RequestParameters/RequestParameters.cshtml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,14 @@ namespace Elasticsearch.Net@(ns)
2727
@foreach (var endpoint in endpoints)
2828
{
2929
var r = endpoint.RequestParameterImplementation;
30+
var supportsBody = endpoint.Body != null;
3031
var names = r.CsharpNames;
3132
<text>
3233
///<summary>Request options for @names.MethodName@Raw(r.OfficialDocumentationLink.IsNullOrEmpty() ? "" : " <para>" + r.OfficialDocumentationLink + "</para>")</summary>
3334
public class @names.ParametersName : RequestParameters<@names.ParametersName>
3435
{
3536
public override HttpMethod DefaultHttpMethod => HttpMethod.@r.HttpMethod;
37+
public override bool SupportsBody => @(supportsBody ? "true" : "false");
3638
@foreach (var param in r.Params)
3739
{
3840
<text> @Raw(param.InitializerGenerator(r.CsharpNames.Namespace, param.TypeLowLevel, param.ClsName, param.QueryStringKey, param.SetterLowLevel, param.Description))

src/Elasticsearch.Net/Api/RequestParameters/IRequestParameters.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ public interface IRequestParameters
99
{
1010
HttpMethod DefaultHttpMethod { get; }
1111

12+
bool SupportsBody { get; }
13+
1214
/// <summary> Allows you to completely circumvent the serializer to build the final response.</summary>
1315
CustomResponseBuilderBase CustomResponseBuilder { get; set; }
1416

src/Elasticsearch.Net/Api/RequestParameters/RequestParameters.AsyncSearch.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,12 +28,14 @@ namespace Elasticsearch.Net.Specification.AsyncSearchApi
2828
public class AsyncSearchDeleteRequestParameters : RequestParameters<AsyncSearchDeleteRequestParameters>
2929
{
3030
public override HttpMethod DefaultHttpMethod => HttpMethod.DELETE;
31+
public override bool SupportsBody => false;
3132
}
3233

3334
///<summary>Request options for Get <para>https://www.elastic.co/guide/en/elasticsearch/reference/current/async-search.html</para></summary>
3435
public class AsyncSearchGetRequestParameters : RequestParameters<AsyncSearchGetRequestParameters>
3536
{
3637
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
38+
public override bool SupportsBody => false;
3739
///<summary>Specify the time interval in which the results (partial or final) for this search will be available</summary>
3840
public TimeSpan KeepAlive
3941
{
@@ -60,6 +62,7 @@ public TimeSpan WaitForCompletionTimeout
6062
public class AsyncSearchSubmitRequestParameters : RequestParameters<AsyncSearchSubmitRequestParameters>
6163
{
6264
public override HttpMethod DefaultHttpMethod => HttpMethod.POST;
65+
public override bool SupportsBody => true;
6366
///<summary>
6467
/// Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have
6568
/// been specified)

src/Elasticsearch.Net/Api/RequestParameters/RequestParameters.Autoscaling.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,6 @@ namespace Elasticsearch.Net.Specification.AutoscalingApi
2828
public class GetAutoscalingDecisionRequestParameters : RequestParameters<GetAutoscalingDecisionRequestParameters>
2929
{
3030
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
31+
public override bool SupportsBody => false;
3132
}
3233
}

src/Elasticsearch.Net/Api/RequestParameters/RequestParameters.Cat.cs

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ namespace Elasticsearch.Net.Specification.CatApi
2828
public class CatAliasesRequestParameters : RequestParameters<CatAliasesRequestParameters>
2929
{
3030
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
31+
public override bool SupportsBody => false;
3132
///<summary>Whether to expand wildcard expression to concrete indices that are open, closed or both.</summary>
3233
public ExpandWildcards? ExpandWildcards
3334
{
@@ -94,6 +95,7 @@ public bool? Verbose
9495
public class CatAllocationRequestParameters : RequestParameters<CatAllocationRequestParameters>
9596
{
9697
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
98+
public override bool SupportsBody => false;
9799
///<summary>The unit in which to display byte values</summary>
98100
public Bytes? Bytes
99101
{
@@ -159,6 +161,7 @@ public bool? Verbose
159161
public class CatCountRequestParameters : RequestParameters<CatCountRequestParameters>
160162
{
161163
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
164+
public override bool SupportsBody => false;
162165
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
163166
public string Format
164167
{
@@ -219,6 +222,7 @@ public bool? Verbose
219222
public class CatFielddataRequestParameters : RequestParameters<CatFielddataRequestParameters>
220223
{
221224
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
225+
public override bool SupportsBody => false;
222226
///<summary>The unit in which to display byte values</summary>
223227
public Bytes? Bytes
224228
{
@@ -293,6 +297,7 @@ public bool? Verbose
293297
public class CatHealthRequestParameters : RequestParameters<CatHealthRequestParameters>
294298
{
295299
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
300+
public override bool SupportsBody => false;
296301
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
297302
public string Format
298303
{
@@ -360,6 +365,7 @@ public bool? Verbose
360365
public class CatHelpRequestParameters : RequestParameters<CatHelpRequestParameters>
361366
{
362367
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
368+
public override bool SupportsBody => false;
363369
///<summary>Return help information</summary>
364370
public bool? Help
365371
{
@@ -379,6 +385,7 @@ public string[] SortByColumns
379385
public class CatIndicesRequestParameters : RequestParameters<CatIndicesRequestParameters>
380386
{
381387
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
388+
public override bool SupportsBody => false;
382389
///<summary>The unit in which to display byte values</summary>
383390
public Bytes? Bytes
384391
{
@@ -472,6 +479,7 @@ public bool? Verbose
472479
public class CatMasterRequestParameters : RequestParameters<CatMasterRequestParameters>
473480
{
474481
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
482+
public override bool SupportsBody => false;
475483
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
476484
public string Format
477485
{
@@ -530,6 +538,7 @@ public bool? Verbose
530538
public class CatDataFrameAnalyticsRequestParameters : RequestParameters<CatDataFrameAnalyticsRequestParameters>
531539
{
532540
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
541+
public override bool SupportsBody => false;
533542
///<summary>Whether to ignore if a wildcard expression matches no configs. (This includes `_all` string or when no configs have been specified)</summary>
534543
public bool? AllowNoMatch
535544
{
@@ -588,6 +597,7 @@ public bool? Verbose
588597
public class CatDatafeedsRequestParameters : RequestParameters<CatDatafeedsRequestParameters>
589598
{
590599
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
600+
public override bool SupportsBody => false;
591601
///<summary>Whether to ignore if a wildcard expression matches no datafeeds. (This includes `_all` string or when no datafeeds have been specified)</summary>
592602
public bool? AllowNoDatafeeds
593603
{
@@ -639,6 +649,7 @@ public bool? Verbose
639649
public class CatJobsRequestParameters : RequestParameters<CatJobsRequestParameters>
640650
{
641651
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
652+
public override bool SupportsBody => false;
642653
///<summary>Whether to ignore if a wildcard expression matches no jobs. (This includes `_all` string or when no jobs have been specified)</summary>
643654
public bool? AllowNoJobs
644655
{
@@ -697,6 +708,7 @@ public bool? Verbose
697708
public class CatTrainedModelsRequestParameters : RequestParameters<CatTrainedModelsRequestParameters>
698709
{
699710
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
711+
public override bool SupportsBody => false;
700712
///<summary>
701713
/// Whether to ignore if a wildcard expression matches no trained models. (This includes `_all` string or when no trained models have been
702714
/// specified)
@@ -772,6 +784,7 @@ public bool? Verbose
772784
public class CatNodeAttributesRequestParameters : RequestParameters<CatNodeAttributesRequestParameters>
773785
{
774786
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
787+
public override bool SupportsBody => false;
775788
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
776789
public string Format
777790
{
@@ -830,6 +843,7 @@ public bool? Verbose
830843
public class CatNodesRequestParameters : RequestParameters<CatNodesRequestParameters>
831844
{
832845
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
846+
public override bool SupportsBody => false;
833847
///<summary>The unit in which to display byte values</summary>
834848
public Bytes? Bytes
835849
{
@@ -903,6 +917,7 @@ public bool? Verbose
903917
public class CatPendingTasksRequestParameters : RequestParameters<CatPendingTasksRequestParameters>
904918
{
905919
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
920+
public override bool SupportsBody => false;
906921
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
907922
public string Format
908923
{
@@ -961,6 +976,7 @@ public bool? Verbose
961976
public class CatPluginsRequestParameters : RequestParameters<CatPluginsRequestParameters>
962977
{
963978
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
979+
public override bool SupportsBody => false;
964980
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
965981
public string Format
966982
{
@@ -1019,6 +1035,7 @@ public bool? Verbose
10191035
public class CatRecoveryRequestParameters : RequestParameters<CatRecoveryRequestParameters>
10201036
{
10211037
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
1038+
public override bool SupportsBody => false;
10221039
///<summary>If `true`, the response only includes ongoing shard recoveries</summary>
10231040
public bool? ActiveOnly
10241041
{
@@ -1099,6 +1116,7 @@ public bool? Verbose
10991116
public class CatRepositoriesRequestParameters : RequestParameters<CatRepositoriesRequestParameters>
11001117
{
11011118
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
1119+
public override bool SupportsBody => false;
11021120
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
11031121
public string Format
11041122
{
@@ -1157,6 +1175,7 @@ public bool? Verbose
11571175
public class CatSegmentsRequestParameters : RequestParameters<CatSegmentsRequestParameters>
11581176
{
11591177
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
1178+
public override bool SupportsBody => false;
11601179
///<summary>The unit in which to display byte values</summary>
11611180
public Bytes? Bytes
11621181
{
@@ -1208,6 +1227,7 @@ public bool? Verbose
12081227
public class CatShardsRequestParameters : RequestParameters<CatShardsRequestParameters>
12091228
{
12101229
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
1230+
public override bool SupportsBody => false;
12111231
///<summary>The unit in which to display byte values</summary>
12121232
public Bytes? Bytes
12131233
{
@@ -1273,6 +1293,7 @@ public bool? Verbose
12731293
public class CatSnapshotsRequestParameters : RequestParameters<CatSnapshotsRequestParameters>
12741294
{
12751295
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
1296+
public override bool SupportsBody => false;
12761297
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
12771298
public string Format
12781299
{
@@ -1331,6 +1352,7 @@ public bool? Verbose
13311352
public class CatTasksRequestParameters : RequestParameters<CatTasksRequestParameters>
13321353
{
13331354
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
1355+
public override bool SupportsBody => false;
13341356
///<summary>A comma-separated list of actions that should be returned. Leave empty to return all.</summary>
13351357
public string[] Actions
13361358
{
@@ -1406,6 +1428,7 @@ public bool? Verbose
14061428
public class CatTemplatesRequestParameters : RequestParameters<CatTemplatesRequestParameters>
14071429
{
14081430
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
1431+
public override bool SupportsBody => false;
14091432
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
14101433
public string Format
14111434
{
@@ -1464,6 +1487,7 @@ public bool? Verbose
14641487
public class CatThreadPoolRequestParameters : RequestParameters<CatThreadPoolRequestParameters>
14651488
{
14661489
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
1490+
public override bool SupportsBody => false;
14671491
///<summary>a short version of the Accept header, e.g. json, yaml</summary>
14681492
public string Format
14691493
{
@@ -1529,6 +1553,7 @@ public bool? Verbose
15291553
public class CatTransformsRequestParameters : RequestParameters<CatTransformsRequestParameters>
15301554
{
15311555
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
1556+
public override bool SupportsBody => false;
15321557
///<summary>Whether to ignore if a wildcard expression matches no transforms. (This includes `_all` string or when no transforms have been specified)</summary>
15331558
public bool? AllowNoMatch
15341559
{

src/Elasticsearch.Net/Api/RequestParameters/RequestParameters.Cluster.cs

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ namespace Elasticsearch.Net.Specification.ClusterApi
2828
public class ClusterAllocationExplainRequestParameters : RequestParameters<ClusterAllocationExplainRequestParameters>
2929
{
3030
public override HttpMethod DefaultHttpMethod => HttpMethod.POST;
31+
public override bool SupportsBody => true;
3132
///<summary>Return information about disk usage and shard sizes (default: false)</summary>
3233
public bool? IncludeDiskInfo
3334
{
@@ -47,6 +48,7 @@ public bool? IncludeYesDecisions
4748
public class DeleteComponentTemplateRequestParameters : RequestParameters<DeleteComponentTemplateRequestParameters>
4849
{
4950
public override HttpMethod DefaultHttpMethod => HttpMethod.DELETE;
51+
public override bool SupportsBody => false;
5052
///<summary>Specify timeout for connection to master</summary>
5153
public TimeSpan MasterTimeout
5254
{
@@ -66,6 +68,7 @@ public TimeSpan Timeout
6668
public class GetComponentTemplateRequestParameters : RequestParameters<GetComponentTemplateRequestParameters>
6769
{
6870
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
71+
public override bool SupportsBody => false;
6972
///<summary>Return local information, do not retrieve the state from master node (default: false)</summary>
7073
public bool? Local
7174
{
@@ -85,6 +88,7 @@ public TimeSpan MasterTimeout
8588
public class ClusterGetSettingsRequestParameters : RequestParameters<ClusterGetSettingsRequestParameters>
8689
{
8790
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
91+
public override bool SupportsBody => false;
8892
///<summary>Return settings in flat format (default: false)</summary>
8993
public bool? FlatSettings
9094
{
@@ -118,6 +122,7 @@ public TimeSpan Timeout
118122
public class ClusterHealthRequestParameters : RequestParameters<ClusterHealthRequestParameters>
119123
{
120124
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
125+
public override bool SupportsBody => false;
121126
///<summary>Whether to expand wildcard expression to concrete indices that are open, closed or both.</summary>
122127
public ExpandWildcards? ExpandWildcards
123128
{
@@ -200,6 +205,7 @@ public WaitForStatus? WaitForStatus
200205
public class ClusterPendingTasksRequestParameters : RequestParameters<ClusterPendingTasksRequestParameters>
201206
{
202207
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
208+
public override bool SupportsBody => false;
203209
///<summary>Return local information, do not retrieve the state from master node (default: false)</summary>
204210
public bool? Local
205211
{
@@ -219,6 +225,7 @@ public TimeSpan MasterTimeout
219225
public class PutComponentTemplateRequestParameters : RequestParameters<PutComponentTemplateRequestParameters>
220226
{
221227
public override HttpMethod DefaultHttpMethod => HttpMethod.PUT;
228+
public override bool SupportsBody => true;
222229
///<summary>Whether the index template should only be added if new or can also replace an existing one</summary>
223230
public bool? Create
224231
{
@@ -245,6 +252,7 @@ public TimeSpan Timeout
245252
public class ClusterPutSettingsRequestParameters : RequestParameters<ClusterPutSettingsRequestParameters>
246253
{
247254
public override HttpMethod DefaultHttpMethod => HttpMethod.PUT;
255+
public override bool SupportsBody => true;
248256
///<summary>Return settings in flat format (default: false)</summary>
249257
public bool? FlatSettings
250258
{
@@ -271,12 +279,14 @@ public TimeSpan Timeout
271279
public class RemoteInfoRequestParameters : RequestParameters<RemoteInfoRequestParameters>
272280
{
273281
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
282+
public override bool SupportsBody => false;
274283
}
275284

276285
///<summary>Request options for Reroute <para>https://www.elastic.co/guide/en/elasticsearch/reference/master/cluster-reroute.html</para></summary>
277286
public class ClusterRerouteRequestParameters : RequestParameters<ClusterRerouteRequestParameters>
278287
{
279288
public override HttpMethod DefaultHttpMethod => HttpMethod.POST;
289+
public override bool SupportsBody => true;
280290
///<summary>Simulate the operation only and return the resulting state</summary>
281291
public bool? DryRun
282292
{
@@ -324,6 +334,7 @@ public TimeSpan Timeout
324334
public class ClusterStateRequestParameters : RequestParameters<ClusterStateRequestParameters>
325335
{
326336
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
337+
public override bool SupportsBody => false;
327338
///<summary>
328339
/// Whether to ignore if a wildcard indices expression resolves into no concrete indices. (This includes `_all` string or when no indices have
329340
/// been specified)
@@ -388,6 +399,7 @@ public TimeSpan WaitForTimeout
388399
public class ClusterStatsRequestParameters : RequestParameters<ClusterStatsRequestParameters>
389400
{
390401
public override HttpMethod DefaultHttpMethod => HttpMethod.GET;
402+
public override bool SupportsBody => false;
391403
///<summary>Return settings in flat format (default: false)</summary>
392404
public bool? FlatSettings
393405
{

0 commit comments

Comments
 (0)