Skip to content

Commit 618fe45

Browse files
authored
feat(AutoComplete): update UseElasticSearch method signature (#749)
Changed the parameter type of the `UseElasticSearch` method in `AutoCompleteOptionsExtensions.cs` from `Action<ElasticSearchAutoCompleteOptions>` to `Action<IServiceProvider, ElasticSearchAutoCompleteOptions>`. Updated internal method calls accordingly to pass the `IServiceProvider` instance. Modified all calls to `UseElasticSearch` in `AutoCompleteTest.cs` to accommodate the new method signature, ensuring proper passing of `IServiceProvider` and `ElasticSearchAutoCompleteOptions` instances. These changes enhance the flexibility of the `UseElasticSearch` method, allowing access to the service provider for configuring `ElasticSearchAutoCompleteOptions` with additional services and dependencies.
1 parent d21a73d commit 618fe45

File tree

2 files changed

+19
-19
lines changed

2 files changed

+19
-19
lines changed

src/Contrib/SearchEngine/AutoComplete/Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch/Extensions/AutoCompleteOptionsExtensions.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// Copyright (c) MASA Stack All rights reserved.
1+
// Copyright (c) MASA Stack All rights reserved.
22
// Licensed under the MIT License. See LICENSE.txt in the project root for license information.
33

44
// ReSharper disable once CheckNamespace
@@ -9,15 +9,15 @@ public static class AutoCompleteOptionsExtensions
99
{
1010
public static ElasticSearchBuilder UseElasticSearch(
1111
this AutoCompleteOptionsBuilder autoCompleteOptionsBuilder,
12-
Action<ElasticSearchAutoCompleteOptions> action)
12+
Action<IServiceProvider, ElasticSearchAutoCompleteOptions> action)
1313
{
1414
MasaArgumentException.ThrowIfNull(action);
1515

1616
autoCompleteOptionsBuilder.Services.TryAddSingleton<IElasticClientProvider, DefaultElasticClientProvider>();
1717
autoCompleteOptionsBuilder.UseCustomAutoComplete(serviceProvider =>
1818
{
1919
var elasticSearchAutoCompleteOptions = new ElasticSearchAutoCompleteOptions();
20-
action.Invoke(elasticSearchAutoCompleteOptions);
20+
action.Invoke(serviceProvider, elasticSearchAutoCompleteOptions);
2121
MasaArgumentException.ThrowIfNullOrWhiteSpace(elasticSearchAutoCompleteOptions.IndexName);
2222

2323
var elasticClientProvider = serviceProvider.GetRequiredService<IElasticClientProvider>();

src/Contrib/SearchEngine/AutoComplete/Tests/Masa.Contrib.SearchEngine.AutoComplete.ElasticSearch.Tests/AutoCompleteTest.cs

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public void TestAddAutoComplete()
2222
string indexName = $"index_{Guid.NewGuid()}";
2323
_services.AddAutoComplete("es", autoCompleteOptions =>
2424
{
25-
autoCompleteOptions.UseElasticSearch(options =>
25+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
2626
{
2727
options.ElasticsearchOptions.UseNodes(_defaultNode);
2828
options.ElasticsearchOptions.UseConnectionSettings(setting =>
@@ -50,7 +50,7 @@ public async Task TestGetAsync()
5050
{
5151
_services.AddAutoComplete("es", autoCompleteOptions =>
5252
{
53-
autoCompleteOptions.UseElasticSearch(options =>
53+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
5454
{
5555
options.ElasticsearchOptions.UseNodes(_defaultNode);
5656
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -103,7 +103,7 @@ public async Task TestMultiConditionsAsyncReturnTotalIs2()
103103
{
104104
_services.AddAutoComplete("es", autoCompleteOptions =>
105105
{
106-
autoCompleteOptions.UseElasticSearch(options =>
106+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
107107
{
108108
options.ElasticsearchOptions.UseNodes(_defaultNode);
109109
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -134,7 +134,7 @@ public async Task TestMultiConditionsAsyncReturnTotalIs1()
134134
{
135135
_services.AddAutoComplete("es", autoCompleteOptions =>
136136
{
137-
autoCompleteOptions.UseElasticSearch(options =>
137+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
138138
{
139139
options.ElasticsearchOptions.UseNodes(_defaultNode);
140140
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -166,7 +166,7 @@ public async Task TestDisableMultiConditionsAsyncReturnTotalIs0()
166166
{
167167
_services.AddAutoComplete("es", autoCompleteOptions =>
168168
{
169-
autoCompleteOptions.UseElasticSearch(options =>
169+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
170170
{
171171
options.ElasticsearchOptions.UseNodes(_defaultNode);
172172
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -211,7 +211,7 @@ public async Task TestCustomModelAsync()
211211

212212
_services.AddAutoCompleteBySpecifyDocument<Employee>("es", autoCompleteOptions =>
213213
{
214-
autoCompleteOptions.UseElasticSearch(options =>
214+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
215215
{
216216
options.ElasticsearchOptions.UseNodes(_defaultNode);
217217
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -257,7 +257,7 @@ public async Task TestCustomModel2Async()
257257
string analyzer = "ik_max_word_pinyin";
258258
_services.AddAutoCompleteBySpecifyDocument<Employee>("es", autoCompleteOptions =>
259259
{
260-
autoCompleteOptions.UseElasticSearch(options =>
260+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
261261
{
262262
options.ElasticsearchOptions.UseNodes(_defaultNode);
263263
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -366,7 +366,7 @@ public async Task TestPreciseAsync()
366366
{
367367
_services.AddAutoComplete("es", autoCompleteOptions =>
368368
{
369-
autoCompleteOptions.UseElasticSearch(options =>
369+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
370370
{
371371
options.ElasticsearchOptions.UseNodes(_defaultNode);
372372
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -415,7 +415,7 @@ public async Task TestOperatorAndAsync()
415415
{
416416
_services.AddAutoComplete("es", autoCompleteOptions =>
417417
{
418-
autoCompleteOptions.UseElasticSearch(options =>
418+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
419419
{
420420
options.ElasticsearchOptions.UseNodes(_defaultNode);
421421
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -454,7 +454,7 @@ public async Task TestOperatorOrAsync()
454454
{
455455
_services.AddAutoComplete("es", autoCompleteOptions =>
456456
{
457-
autoCompleteOptions.UseElasticSearch(options =>
457+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
458458
{
459459
options.ElasticsearchOptions.UseNodes(_defaultNode);
460460
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -493,7 +493,7 @@ public async Task DeleteAsyncReturnDocumentIsNotExist()
493493
{
494494
_services.AddAutoComplete("es", autoCompleteOptions =>
495495
{
496-
autoCompleteOptions.UseElasticSearch(options =>
496+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
497497
{
498498
options.ElasticsearchOptions.UseNodes(_defaultNode);
499499
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -531,7 +531,7 @@ public async Task DeleteAsyncReturnDeleteSuccess()
531531
{
532532
_services.AddAutoComplete("es", autoCompleteOptions =>
533533
{
534-
autoCompleteOptions.UseElasticSearch(options =>
534+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
535535
{
536536
options.ElasticsearchOptions.UseNodes(_defaultNode);
537537
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -572,7 +572,7 @@ public async Task DeleteUserReturnEmpty()
572572
{
573573
_services.AddAutoComplete("es", autoCompleteOptions =>
574574
{
575-
autoCompleteOptions.UseElasticSearch(options =>
575+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
576576
{
577577
options.ElasticsearchOptions.UseNodes(_defaultNode);
578578
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -619,7 +619,7 @@ public async Task DeleteMultiUserReturnEmpty()
619619
{
620620
_services.AddAutoComplete("es", autoCompleteOptions =>
621621
{
622-
autoCompleteOptions.UseElasticSearch(options =>
622+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
623623
{
624624
options.ElasticsearchOptions.UseNodes(_defaultNode);
625625
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -671,7 +671,7 @@ public async Task TestAsync()
671671
{
672672
_services.AddAutoComplete("es", autoCompleteOptions =>
673673
{
674-
autoCompleteOptions.UseElasticSearch(options =>
674+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
675675
{
676676
options.ElasticsearchOptions.UseNodes(_defaultNode);
677677
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));
@@ -721,7 +721,7 @@ public async Task TestRebuildAsync()
721721
var indexName = $"index_{Guid.NewGuid()}";
722722
_services.AddAutoComplete("es", autoCompleteOptions =>
723723
{
724-
autoCompleteOptions.UseElasticSearch(options =>
724+
autoCompleteOptions.UseElasticSearch((serviceProvider, options) =>
725725
{
726726
options.ElasticsearchOptions.UseNodes(_defaultNode);
727727
options.ElasticsearchOptions.UseConnectionSettings(setting => setting.EnableApiVersioningHeader(false));

0 commit comments

Comments
 (0)