Skip to content

Commit 0b60550

Browse files
committed
fix #1566 Filter aggregation does not support raw json, also normalized all jsonconverters on props of type IQueryContainer and IFilterContainer
1 parent 4247a65 commit 0b60550

19 files changed

+40
-3
lines changed

src/Nest/DSL/Aggregations/FilterAggregationDescriptor.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
using System;
2+
using Nest.Resolvers.Converters;
23
using Nest.Resolvers.Converters.Aggregations;
34
using Newtonsoft.Json;
45

@@ -8,6 +9,7 @@ namespace Nest
89
[JsonConverter(typeof(FilterAggregatorConverter))]
910
public interface IFilterAggregator : IBucketAggregator
1011
{
12+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<FilterContainer>, CustomJsonConverter>))]
1113
IFilterContainer Filter { get; set; }
1214
}
1315

src/Nest/DSL/Aggregations/SignificantTermsAggregationDescriptor.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ public interface ISignificantTermsAggregator : IBucketAggregator
4747
ScriptedHeuristic Script { get; set; }
4848

4949
[JsonProperty("background_filter")]
50+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<FilterContainer>, CustomJsonConverter>))]
5051
IFilterContainer BackgroundFilter { get; set; }
5152

5253
}

src/Nest/DSL/CountDescriptor.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
using System.Collections.Generic;
33
using Elasticsearch.Net;
44
using Newtonsoft.Json;
5+
using Nest.Resolvers.Converters;
56

67
namespace Nest
78
{
@@ -10,6 +11,7 @@ public interface ICountRequest : IQueryPath<CountRequestParameters>
1011
{
1112

1213
[JsonProperty("query")]
14+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<QueryDescriptor<object>>, CustomJsonConverter>))]
1315
IQueryContainer Query { get; set; }
1416
}
1517
public interface ICountRequest<T> : ICountRequest

src/Nest/DSL/DeleteByQueryDescriptor.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,15 @@
33
using System.Linq;
44
using Elasticsearch.Net;
55
using Newtonsoft.Json;
6+
using Nest.Resolvers.Converters;
67

78
namespace Nest
89
{
910
[JsonObject(MemberSerialization = MemberSerialization.OptIn)]
1011
public interface IDeleteByQueryRequest : IQueryPath<DeleteByQueryRequestParameters>
1112
{
1213
[JsonProperty("query")]
14+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<QueryDescriptor<object>>, CustomJsonConverter>))]
1315
IQueryContainer Query { get; set; }
1416
}
1517

src/Nest/DSL/ExplainDescriptor.cs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
using System;
22
using Elasticsearch.Net;
3+
using Nest.Resolvers.Converters;
34
using Newtonsoft.Json;
45

56
namespace Nest
@@ -8,6 +9,7 @@ namespace Nest
89
public interface IExplainRequest : IDocumentOptionalPath<ExplainRequestParameters>
910
{
1011
[JsonProperty("query")]
12+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<QueryDescriptor<object>>, CustomJsonConverter>))]
1113
IQueryContainer Query { get; set; }
1214
}
1315

src/Nest/DSL/Facets/FacetContainer.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ public interface IFacetContainer
4545
IGeoDistanceFacetRequest GeoDistance { get; set; }
4646

4747
[JsonProperty(PropertyName = "facet_filter")]
48+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<FilterContainer>, CustomJsonConverter>))]
4849
IFilterContainer FacetFilter { get; set; }
4950
}
5051

@@ -69,6 +70,7 @@ public class FacetContainer : IFacetContainer
6970
public IDateHistogramFacetRequest DateHistogram { get; set; }
7071

7172
[JsonProperty(PropertyName = "query")]
73+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<QueryDescriptor<object>>, CustomJsonConverter>))]
7274
public IQueryContainer Query { get; set; }
7375

7476
[JsonProperty(PropertyName = "filter")]
@@ -85,6 +87,7 @@ public class FacetContainer : IFacetContainer
8587
public IGeoDistanceFacetRequest GeoDistance { get; set; }
8688

8789
[JsonProperty(PropertyName = "facet_filter")]
90+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<FilterContainer>, CustomJsonConverter>))]
8891
public IFilterContainer FacetFilter { get; set; }
8992
}
9093
}

src/Nest/DSL/Facets/FacetRequest.cs

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,19 @@
1+
using Nest.Resolvers.Converters;
2+
using Newtonsoft.Json;
3+
14
namespace Nest
25
{
36
public interface IFacetRequest
47
{
58
bool? Global { get; set; }
9+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<FilterContainer>, CustomJsonConverter>))]
610
IFilterContainer FacetFilter { get; set; }
711
PropertyPathMarker Nested { get; set; }
812
}
913
public abstract class FacetRequest : IFacetRequest
1014
{
1115
public bool? Global { get; set; }
16+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<FilterContainer>, CustomJsonConverter>))]
1217
public IFilterContainer FacetFilter { get; set; }
1318
public PropertyPathMarker Nested { get; set; }
1419
}

src/Nest/DSL/Filter/HasChildFilterDescriptor.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ public interface IHasChildFilter : IFilter
2020
int? MaxChildren { get; set; }
2121

2222
[JsonProperty("query")]
23+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<QueryDescriptor<object>>, CustomJsonConverter>))]
2324
IQueryContainer Query { get; set; }
2425

2526
[JsonProperty("filter")]

src/Nest/DSL/Filter/TermsFilterDescriptor.cs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
using System;
22
using System.Collections.Generic;
33
using System.Linq;
4+
using System.Linq.Expressions;
45
using Nest.Resolvers.Converters.Filters;
56
using Newtonsoft.Json;
67

src/Nest/DSL/Query/SpanMultiTermQueryDescriptor.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
using Newtonsoft.Json;
1+
using Nest.Resolvers.Converters;
2+
using Newtonsoft.Json;
23
using System;
34
using System.Collections.Generic;
45
using System.Linq;
@@ -10,6 +11,7 @@ namespace Nest
1011
public interface ISpanMultiTermQuery : ISpanSubQuery
1112
{
1213
[JsonProperty("match")]
14+
[JsonConverter(typeof(CompositeJsonConverter<ReadAsTypeConverter<QueryDescriptor<object>>, CustomJsonConverter>))]
1315
IQueryContainer Match { get; set; }
1416

1517
[JsonProperty("boost")]

0 commit comments

Comments
 (0)