Skip to content

Commit 4e871bd

Browse files
stevejgordongithub-actions[bot]
authored andcommitted
Containers support fluent variant assignment (#6762)
1 parent 055fb13 commit 4e871bd

14 files changed

+627
-683
lines changed

src/Elastic.Clients.Elasticsearch/_Generated/Types/Aggregations/InferenceConfigContainer.g.cs

+17-21
Original file line numberDiff line numberDiff line change
@@ -114,31 +114,29 @@ public InferenceConfigContainerDescriptor() : base()
114114

115115
private Descriptor Descriptor { get; set; }
116116

117-
private void Set<T>(Action<T> descriptorAction, string variantName)
117+
private InferenceConfigContainerDescriptor<TDocument> Set<T>(Action<T> descriptorAction, string variantName)
118118
where T : Descriptor
119119
{
120-
if (ContainsVariant)
121-
throw new InvalidOperationException("A variant has already been assigned to the InferenceConfigContainerDescriptor. Only a single InferenceConfigContainer variant can be added to this container type.");
122120
ContainedVariantName = variantName;
123121
ContainsVariant = true;
124122
var descriptor = (T)Activator.CreateInstance(typeof(T), true);
125123
descriptorAction?.Invoke(descriptor);
126124
Descriptor = descriptor;
125+
return Self;
127126
}
128127

129-
private void Set(object variant, string variantName)
128+
private InferenceConfigContainerDescriptor<TDocument> Set(object variant, string variantName)
130129
{
131-
if (ContainsVariant)
132-
throw new Exception("A variant has already been assigned to the InferenceConfigContainerDescriptor. Only a single InferenceConfigContainer variant can be added to this container type.");
133130
Variant = variant;
134131
ContainedVariantName = variantName;
135132
ContainsVariant = true;
133+
return Self;
136134
}
137135

138-
public void Classification(Ml.ClassificationInferenceOptions variant) => Set(variant, "classification");
139-
public void Classification(Action<Ml.ClassificationInferenceOptionsDescriptor> configure) => Set(configure, "classification");
140-
public void Regression(Ml.RegressionInferenceOptions variant) => Set(variant, "regression");
141-
public void Regression(Action<Ml.RegressionInferenceOptionsDescriptor<TDocument>> configure) => Set(configure, "regression");
136+
public InferenceConfigContainerDescriptor<TDocument> Classification(Ml.ClassificationInferenceOptions variant) => Set(variant, "classification");
137+
public InferenceConfigContainerDescriptor<TDocument> Classification(Action<Ml.ClassificationInferenceOptionsDescriptor> configure) => Set(configure, "classification");
138+
public InferenceConfigContainerDescriptor<TDocument> Regression(Ml.RegressionInferenceOptions variant) => Set(variant, "regression");
139+
public InferenceConfigContainerDescriptor<TDocument> Regression(Action<Ml.RegressionInferenceOptionsDescriptor<TDocument>> configure) => Set(configure, "regression");
142140
protected override void Serialize(Utf8JsonWriter writer, JsonSerializerOptions options, IElasticsearchClientSettings settings)
143141
{
144142
if (!ContainsVariant)
@@ -177,32 +175,30 @@ public InferenceConfigContainerDescriptor() : base()
177175

178176
private Descriptor Descriptor { get; set; }
179177

180-
private void Set<T>(Action<T> descriptorAction, string variantName)
178+
private InferenceConfigContainerDescriptor Set<T>(Action<T> descriptorAction, string variantName)
181179
where T : Descriptor
182180
{
183-
if (ContainsVariant)
184-
throw new InvalidOperationException("A variant has already been assigned to the InferenceConfigContainerDescriptor. Only a single InferenceConfigContainer variant can be added to this container type.");
185181
ContainedVariantName = variantName;
186182
ContainsVariant = true;
187183
var descriptor = (T)Activator.CreateInstance(typeof(T), true);
188184
descriptorAction?.Invoke(descriptor);
189185
Descriptor = descriptor;
186+
return Self;
190187
}
191188

192-
private void Set(object variant, string variantName)
189+
private InferenceConfigContainerDescriptor Set(object variant, string variantName)
193190
{
194-
if (ContainsVariant)
195-
throw new Exception("A variant has already been assigned to the InferenceConfigContainerDescriptor. Only a single InferenceConfigContainer variant can be added to this container type.");
196191
Variant = variant;
197192
ContainedVariantName = variantName;
198193
ContainsVariant = true;
194+
return Self;
199195
}
200196

201-
public void Classification(Ml.ClassificationInferenceOptions variant) => Set(variant, "classification");
202-
public void Classification(Action<Ml.ClassificationInferenceOptionsDescriptor> configure) => Set(configure, "classification");
203-
public void Regression(Ml.RegressionInferenceOptions variant) => Set(variant, "regression");
204-
public void Regression(Action<Ml.RegressionInferenceOptionsDescriptor> configure) => Set(configure, "regression");
205-
public void Regression<TDocument>(Action<Ml.RegressionInferenceOptionsDescriptor<TDocument>> configure) => Set(configure, "regression");
197+
public InferenceConfigContainerDescriptor Classification(Ml.ClassificationInferenceOptions variant) => Set(variant, "classification");
198+
public InferenceConfigContainerDescriptor Classification(Action<Ml.ClassificationInferenceOptionsDescriptor> configure) => Set(configure, "classification");
199+
public InferenceConfigContainerDescriptor Regression(Ml.RegressionInferenceOptions variant) => Set(variant, "regression");
200+
public InferenceConfigContainerDescriptor Regression(Action<Ml.RegressionInferenceOptionsDescriptor> configure) => Set(configure, "regression");
201+
public InferenceConfigContainerDescriptor Regression<TDocument>(Action<Ml.RegressionInferenceOptionsDescriptor<TDocument>> configure) => Set(configure, "regression");
206202
protected override void Serialize(Utf8JsonWriter writer, JsonSerializerOptions options, IElasticsearchClientSettings settings)
207203
{
208204
if (!ContainsVariant)

src/Elastic.Clients.Elasticsearch/_Generated/Types/Core/FieldSuggester.g.cs

+23-27
Original file line numberDiff line numberDiff line change
@@ -191,25 +191,23 @@ public FieldSuggesterDescriptor() : base()
191191

192192
private Descriptor Descriptor { get; set; }
193193

194-
private void Set<T>(Action<T> descriptorAction, string variantName)
194+
private FieldSuggesterDescriptor<TDocument> Set<T>(Action<T> descriptorAction, string variantName)
195195
where T : Descriptor
196196
{
197-
if (ContainsVariant)
198-
throw new InvalidOperationException("A variant has already been assigned to the FieldSuggesterDescriptor. Only a single FieldSuggester variant can be added to this container type.");
199197
ContainedVariantName = variantName;
200198
ContainsVariant = true;
201199
var descriptor = (T)Activator.CreateInstance(typeof(T), true);
202200
descriptorAction?.Invoke(descriptor);
203201
Descriptor = descriptor;
202+
return Self;
204203
}
205204

206-
private void Set(object variant, string variantName)
205+
private FieldSuggesterDescriptor<TDocument> Set(object variant, string variantName)
207206
{
208-
if (ContainsVariant)
209-
throw new Exception("A variant has already been assigned to the FieldSuggesterDescriptor. Only a single FieldSuggester variant can be added to this container type.");
210207
Variant = variant;
211208
ContainedVariantName = variantName;
212209
ContainsVariant = true;
210+
return Self;
213211
}
214212

215213
private string? PrefixValue { get; set; }
@@ -236,12 +234,12 @@ public FieldSuggesterDescriptor<TDocument> Text(string? text)
236234
return Self;
237235
}
238236

239-
public void Completion(CompletionSuggester variant) => Set(variant, "completion");
240-
public void Completion(Action<CompletionSuggesterDescriptor<TDocument>> configure) => Set(configure, "completion");
241-
public void Phrase(PhraseSuggester variant) => Set(variant, "phrase");
242-
public void Phrase(Action<PhraseSuggesterDescriptor<TDocument>> configure) => Set(configure, "phrase");
243-
public void Term(TermSuggester variant) => Set(variant, "term");
244-
public void Term(Action<TermSuggesterDescriptor<TDocument>> configure) => Set(configure, "term");
237+
public FieldSuggesterDescriptor<TDocument> Completion(CompletionSuggester variant) => Set(variant, "completion");
238+
public FieldSuggesterDescriptor<TDocument> Completion(Action<CompletionSuggesterDescriptor<TDocument>> configure) => Set(configure, "completion");
239+
public FieldSuggesterDescriptor<TDocument> Phrase(PhraseSuggester variant) => Set(variant, "phrase");
240+
public FieldSuggesterDescriptor<TDocument> Phrase(Action<PhraseSuggesterDescriptor<TDocument>> configure) => Set(configure, "phrase");
241+
public FieldSuggesterDescriptor<TDocument> Term(TermSuggester variant) => Set(variant, "term");
242+
public FieldSuggesterDescriptor<TDocument> Term(Action<TermSuggesterDescriptor<TDocument>> configure) => Set(configure, "term");
245243
protected override void Serialize(Utf8JsonWriter writer, JsonSerializerOptions options, IElasticsearchClientSettings settings)
246244
{
247245
if (!ContainsVariant)
@@ -298,25 +296,23 @@ public FieldSuggesterDescriptor() : base()
298296

299297
private Descriptor Descriptor { get; set; }
300298

301-
private void Set<T>(Action<T> descriptorAction, string variantName)
299+
private FieldSuggesterDescriptor Set<T>(Action<T> descriptorAction, string variantName)
302300
where T : Descriptor
303301
{
304-
if (ContainsVariant)
305-
throw new InvalidOperationException("A variant has already been assigned to the FieldSuggesterDescriptor. Only a single FieldSuggester variant can be added to this container type.");
306302
ContainedVariantName = variantName;
307303
ContainsVariant = true;
308304
var descriptor = (T)Activator.CreateInstance(typeof(T), true);
309305
descriptorAction?.Invoke(descriptor);
310306
Descriptor = descriptor;
307+
return Self;
311308
}
312309

313-
private void Set(object variant, string variantName)
310+
private FieldSuggesterDescriptor Set(object variant, string variantName)
314311
{
315-
if (ContainsVariant)
316-
throw new Exception("A variant has already been assigned to the FieldSuggesterDescriptor. Only a single FieldSuggester variant can be added to this container type.");
317312
Variant = variant;
318313
ContainedVariantName = variantName;
319314
ContainsVariant = true;
315+
return Self;
320316
}
321317

322318
private string? PrefixValue { get; set; }
@@ -343,15 +339,15 @@ public FieldSuggesterDescriptor Text(string? text)
343339
return Self;
344340
}
345341

346-
public void Completion(CompletionSuggester variant) => Set(variant, "completion");
347-
public void Completion(Action<CompletionSuggesterDescriptor> configure) => Set(configure, "completion");
348-
public void Completion<TDocument>(Action<CompletionSuggesterDescriptor<TDocument>> configure) => Set(configure, "completion");
349-
public void Phrase(PhraseSuggester variant) => Set(variant, "phrase");
350-
public void Phrase(Action<PhraseSuggesterDescriptor> configure) => Set(configure, "phrase");
351-
public void Phrase<TDocument>(Action<PhraseSuggesterDescriptor<TDocument>> configure) => Set(configure, "phrase");
352-
public void Term(TermSuggester variant) => Set(variant, "term");
353-
public void Term(Action<TermSuggesterDescriptor> configure) => Set(configure, "term");
354-
public void Term<TDocument>(Action<TermSuggesterDescriptor<TDocument>> configure) => Set(configure, "term");
342+
public FieldSuggesterDescriptor Completion(CompletionSuggester variant) => Set(variant, "completion");
343+
public FieldSuggesterDescriptor Completion(Action<CompletionSuggesterDescriptor> configure) => Set(configure, "completion");
344+
public FieldSuggesterDescriptor Completion<TDocument>(Action<CompletionSuggesterDescriptor<TDocument>> configure) => Set(configure, "completion");
345+
public FieldSuggesterDescriptor Phrase(PhraseSuggester variant) => Set(variant, "phrase");
346+
public FieldSuggesterDescriptor Phrase(Action<PhraseSuggesterDescriptor> configure) => Set(configure, "phrase");
347+
public FieldSuggesterDescriptor Phrase<TDocument>(Action<PhraseSuggesterDescriptor<TDocument>> configure) => Set(configure, "phrase");
348+
public FieldSuggesterDescriptor Term(TermSuggester variant) => Set(variant, "term");
349+
public FieldSuggesterDescriptor Term(Action<TermSuggesterDescriptor> configure) => Set(configure, "term");
350+
public FieldSuggesterDescriptor Term<TDocument>(Action<TermSuggesterDescriptor<TDocument>> configure) => Set(configure, "term");
355351
protected override void Serialize(Utf8JsonWriter writer, JsonSerializerOptions options, IElasticsearchClientSettings settings)
356352
{
357353
if (!ContainsVariant)

src/Elastic.Clients.Elasticsearch/_Generated/Types/Core/SmoothingModelContainer.g.cs

+20-24
Original file line numberDiff line numberDiff line change
@@ -125,33 +125,31 @@ public SmoothingModelContainerDescriptor() : base()
125125

126126
private Descriptor Descriptor { get; set; }
127127

128-
private void Set<T>(Action<T> descriptorAction, string variantName)
128+
private SmoothingModelContainerDescriptor<TDocument> Set<T>(Action<T> descriptorAction, string variantName)
129129
where T : Descriptor
130130
{
131-
if (ContainsVariant)
132-
throw new InvalidOperationException("A variant has already been assigned to the SmoothingModelContainerDescriptor. Only a single SmoothingModelContainer variant can be added to this container type.");
133131
ContainedVariantName = variantName;
134132
ContainsVariant = true;
135133
var descriptor = (T)Activator.CreateInstance(typeof(T), true);
136134
descriptorAction?.Invoke(descriptor);
137135
Descriptor = descriptor;
136+
return Self;
138137
}
139138

140-
private void Set(object variant, string variantName)
139+
private SmoothingModelContainerDescriptor<TDocument> Set(object variant, string variantName)
141140
{
142-
if (ContainsVariant)
143-
throw new Exception("A variant has already been assigned to the SmoothingModelContainerDescriptor. Only a single SmoothingModelContainer variant can be added to this container type.");
144141
Variant = variant;
145142
ContainedVariantName = variantName;
146143
ContainsVariant = true;
144+
return Self;
147145
}
148146

149-
public void Laplace(LaplaceSmoothingModel variant) => Set(variant, "laplace");
150-
public void Laplace(Action<LaplaceSmoothingModelDescriptor> configure) => Set(configure, "laplace");
151-
public void LinearInterpolation(LinearInterpolationSmoothingModel variant) => Set(variant, "linear_interpolation");
152-
public void LinearInterpolation(Action<LinearInterpolationSmoothingModelDescriptor> configure) => Set(configure, "linear_interpolation");
153-
public void StupidBackoff(StupidBackoffSmoothingModel variant) => Set(variant, "stupid_backoff");
154-
public void StupidBackoff(Action<StupidBackoffSmoothingModelDescriptor> configure) => Set(configure, "stupid_backoff");
147+
public SmoothingModelContainerDescriptor<TDocument> Laplace(LaplaceSmoothingModel variant) => Set(variant, "laplace");
148+
public SmoothingModelContainerDescriptor<TDocument> Laplace(Action<LaplaceSmoothingModelDescriptor> configure) => Set(configure, "laplace");
149+
public SmoothingModelContainerDescriptor<TDocument> LinearInterpolation(LinearInterpolationSmoothingModel variant) => Set(variant, "linear_interpolation");
150+
public SmoothingModelContainerDescriptor<TDocument> LinearInterpolation(Action<LinearInterpolationSmoothingModelDescriptor> configure) => Set(configure, "linear_interpolation");
151+
public SmoothingModelContainerDescriptor<TDocument> StupidBackoff(StupidBackoffSmoothingModel variant) => Set(variant, "stupid_backoff");
152+
public SmoothingModelContainerDescriptor<TDocument> StupidBackoff(Action<StupidBackoffSmoothingModelDescriptor> configure) => Set(configure, "stupid_backoff");
155153
protected override void Serialize(Utf8JsonWriter writer, JsonSerializerOptions options, IElasticsearchClientSettings settings)
156154
{
157155
if (!ContainsVariant)
@@ -190,33 +188,31 @@ public SmoothingModelContainerDescriptor() : base()
190188

191189
private Descriptor Descriptor { get; set; }
192190

193-
private void Set<T>(Action<T> descriptorAction, string variantName)
191+
private SmoothingModelContainerDescriptor Set<T>(Action<T> descriptorAction, string variantName)
194192
where T : Descriptor
195193
{
196-
if (ContainsVariant)
197-
throw new InvalidOperationException("A variant has already been assigned to the SmoothingModelContainerDescriptor. Only a single SmoothingModelContainer variant can be added to this container type.");
198194
ContainedVariantName = variantName;
199195
ContainsVariant = true;
200196
var descriptor = (T)Activator.CreateInstance(typeof(T), true);
201197
descriptorAction?.Invoke(descriptor);
202198
Descriptor = descriptor;
199+
return Self;
203200
}
204201

205-
private void Set(object variant, string variantName)
202+
private SmoothingModelContainerDescriptor Set(object variant, string variantName)
206203
{
207-
if (ContainsVariant)
208-
throw new Exception("A variant has already been assigned to the SmoothingModelContainerDescriptor. Only a single SmoothingModelContainer variant can be added to this container type.");
209204
Variant = variant;
210205
ContainedVariantName = variantName;
211206
ContainsVariant = true;
207+
return Self;
212208
}
213209

214-
public void Laplace(LaplaceSmoothingModel variant) => Set(variant, "laplace");
215-
public void Laplace(Action<LaplaceSmoothingModelDescriptor> configure) => Set(configure, "laplace");
216-
public void LinearInterpolation(LinearInterpolationSmoothingModel variant) => Set(variant, "linear_interpolation");
217-
public void LinearInterpolation(Action<LinearInterpolationSmoothingModelDescriptor> configure) => Set(configure, "linear_interpolation");
218-
public void StupidBackoff(StupidBackoffSmoothingModel variant) => Set(variant, "stupid_backoff");
219-
public void StupidBackoff(Action<StupidBackoffSmoothingModelDescriptor> configure) => Set(configure, "stupid_backoff");
210+
public SmoothingModelContainerDescriptor Laplace(LaplaceSmoothingModel variant) => Set(variant, "laplace");
211+
public SmoothingModelContainerDescriptor Laplace(Action<LaplaceSmoothingModelDescriptor> configure) => Set(configure, "laplace");
212+
public SmoothingModelContainerDescriptor LinearInterpolation(LinearInterpolationSmoothingModel variant) => Set(variant, "linear_interpolation");
213+
public SmoothingModelContainerDescriptor LinearInterpolation(Action<LinearInterpolationSmoothingModelDescriptor> configure) => Set(configure, "linear_interpolation");
214+
public SmoothingModelContainerDescriptor StupidBackoff(StupidBackoffSmoothingModel variant) => Set(variant, "stupid_backoff");
215+
public SmoothingModelContainerDescriptor StupidBackoff(Action<StupidBackoffSmoothingModelDescriptor> configure) => Set(configure, "stupid_backoff");
220216
protected override void Serialize(Utf8JsonWriter writer, JsonSerializerOptions options, IElasticsearchClientSettings settings)
221217
{
222218
if (!ContainsVariant)

0 commit comments

Comments
 (0)