Skip to content

Commit 7cd053a

Browse files
committed
Fix for code review
1 parent 264f7b1 commit 7cd053a

File tree

5 files changed

+15
-11
lines changed

5 files changed

+15
-11
lines changed

src/Nest/DSL/Reindex/ReindexDescriptor.cs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ public class ReindexDescriptor<T> where T : class
66
internal string _ToIndexName { get; set; }
77
internal string _FromIndexName { get; set; }
88
internal string _Scroll { get; set; }
9-
internal int? _Size { get; set; }
9+
internal int? _Size { get; set; }
10+
internal bool _allTypes { get; set; }
1011

1112
internal Func<QueryDescriptor<T>, QueryContainer> _QuerySelector { get; set; }
1213

src/Nest/Domain/Observers/ReindexObservable.cs

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ private void Reindex(IObserver<IReindexResponse<T>> observer)
3838
var toIndex = this._reindexDescriptor._ToIndexName;
3939
var scroll = this._reindexDescriptor._Scroll ?? "2m";
4040
var size = this._reindexDescriptor._Size ?? 100;
41+
var allTypes = this._reindexDescriptor._allTypes;
4142

4243
fromIndex.ThrowIfNullOrEmpty("fromIndex");
4344
toIndex.ThrowIfNullOrEmpty("toIndex");
@@ -54,14 +55,10 @@ private void Reindex(IObserver<IReindexResponse<T>> observer)
5455
var page = 0;
5556
Func<SearchDescriptor<T>, SearchDescriptor<T>> searchDescriptor = s => s.Index(fromIndex);
5657

57-
if (typeof(T).Name.Equals(typeof(object).Name))
58-
{
58+
if (allTypes)
5959
searchDescriptor = s => searchDescriptor(s).AllTypes();
60-
}
6160
else
62-
{
6361
searchDescriptor = s => searchDescriptor(s).Type<T>();
64-
}
6562

6663

6764
var searchResult = this.CurrentClient.Search<T>(

src/Nest/ElasticClient-Reindex.cs

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,15 @@ public IObservable<IReindexResponse<T>> Reindex<T>(Func<ReindexDescriptor<T>, Re
1616
}
1717

1818
/// <inheritdoc />
19-
public IObservable<IReindexResponse<IDocument>> Reindex(Func<ReindexDescriptor<object>, ReindexDescriptor<object>> reindexSelector)
19+
public IObservable<IReindexResponse<IDocument>> Reindex(Func<ReindexDescriptor<IDocument>, ReindexDescriptor<IDocument>> reindexSelector)
2020
{
21-
return Reindex<object>(reindexSelector);
21+
reindexSelector.ThrowIfNull("reindexSelector");
22+
var reindexDescriptor = reindexSelector(new ReindexDescriptor<IDocument>());
23+
24+
reindexDescriptor._allTypes = true;
25+
26+
var observable = new ReindexObservable<IDocument>(this, _connectionSettings, reindexDescriptor);
27+
return observable;
2228
}
2329
}
2430
}

src/Nest/IElasticClient.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ IObservable<IReindexResponse<T>> Reindex<T>(Func<ReindexDescriptor<T>, ReindexDe
2323
/// Helper method that allows you to reindex from one index into another using SCAN and SCROLL.
2424
/// </summary>
2525
/// <returns>An IObservable you can subscribe to to listen to the progress of the reindexation process</returns>
26-
IObservable<IReindexResponse<object>> Reindex(Func<ReindexDescriptor<object>, ReindexDescriptor<object>> reindexSelector);
26+
IObservable<IReindexResponse<IDocument>> Reindex(Func<ReindexDescriptor<IDocument>, ReindexDescriptor<IDocument>> reindexSelector);
2727

2828
/// <summary>
2929
/// A search request can be scrolled by specifying the scroll parameter.

src/Tests/Nest.Tests.Integration/Index/ReindexTests.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public class ReindexTests : IntegrationTests
1313
public void ReindexMinimal()
1414
{
1515
var toIndex = ElasticsearchConfiguration.NewUniqueIndexName();
16-
var observable = this.Client.Reindex(r => r
16+
var observable = this.Client.Reindex<object>(r => r
1717
.FromIndex(ElasticsearchConfiguration.DefaultIndex)
1818
.ToIndex(toIndex)
1919
);
@@ -53,7 +53,7 @@ public void Reindex()
5353
.NumberOfShards(1)
5454
)
5555
);
56-
var observer = new ReindexObserver<object>(
56+
var observer = new ReindexObserver<IDocument>(
5757
onNext: (r) =>
5858
{
5959
var scrollResults = r.SearchResponse;

0 commit comments

Comments
 (0)