Skip to content

Commit 543660a

Browse files
committed
Merge pull request elastic#1506 from jbattermann/develop
Added Min/MaxChildren to HasChildFilterDescriptor
2 parents 06fa1ed + f563f03 commit 543660a

File tree

1 file changed

+25
-1
lines changed

1 file changed

+25
-1
lines changed

src/Nest/DSL/Filter/HasChildFilterDescriptor.cs

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,12 @@ public interface IHasChildFilter : IFilter
1313
[JsonProperty("type")]
1414
TypeNameMarker Type { get; set; }
1515

16+
[JsonProperty("min_children")]
17+
int? MinChildren { get; set; }
18+
19+
[JsonProperty("max_children")]
20+
int? MaxChildren { get; set; }
21+
1622
[JsonProperty("query")]
1723
IQueryContainer Query { get; set; }
1824

@@ -25,7 +31,7 @@ public interface IHasChildFilter : IFilter
2531
IInnerHits InnerHits { get; set; }
2632

2733
}
28-
34+
2935
public class HasChildFilter : PlainFilter, IHasChildFilter
3036
{
3137
protected internal override void WrapInContainer(IFilterContainer container)
@@ -34,6 +40,8 @@ protected internal override void WrapInContainer(IFilterContainer container)
3440
}
3541

3642
public TypeNameMarker Type { get; set; }
43+
public int? MinChildren { get; set; }
44+
public int? MaxChildren { get; set; }
3745
public IQueryContainer Query { get; set; }
3846
public IFilterContainer Filter { get; set; }
3947
public IInnerHits InnerHits { get; set; }
@@ -57,6 +65,10 @@ bool IFilter.IsConditionless
5765

5866
TypeNameMarker IHasChildFilter.Type { get; set; }
5967

68+
int? IHasChildFilter.MinChildren { get; set; }
69+
70+
int? IHasChildFilter.MaxChildren { get; set; }
71+
6072
IQueryContainer IHasChildFilter.Query { get; set; }
6173

6274
IFilterContainer IHasChildFilter.Filter { get; set; }
@@ -88,6 +100,18 @@ public HasChildFilterDescriptor<T> Type(string type)
88100
return this;
89101
}
90102

103+
public HasChildFilterDescriptor<T> MinChildren(int minChildren)
104+
{
105+
Self.MinChildren = minChildren;
106+
return this;
107+
}
108+
109+
public HasChildFilterDescriptor<T> MaxChildren(int maxChildren)
110+
{
111+
Self.MaxChildren = maxChildren;
112+
return this;
113+
}
114+
91115
public HasChildFilterDescriptor<T> InnerHits()
92116
{
93117
Self.InnerHits = new InnerHits();

0 commit comments

Comments
 (0)