diff options
Diffstat (limited to 'vendor/gopkg.in/olivere/elastic.v5/search_queries_nested.go')
-rw-r--r-- | vendor/gopkg.in/olivere/elastic.v5/search_queries_nested.go | 23 |
1 files changed, 17 insertions, 6 deletions
diff --git a/vendor/gopkg.in/olivere/elastic.v5/search_queries_nested.go b/vendor/gopkg.in/olivere/elastic.v5/search_queries_nested.go index 11e3bb1c6..a95cc2b80 100644 --- a/vendor/gopkg.in/olivere/elastic.v5/search_queries_nested.go +++ b/vendor/gopkg.in/olivere/elastic.v5/search_queries_nested.go @@ -12,12 +12,13 @@ package elastic // For more details, see // https://www.elastic.co/guide/en/elasticsearch/reference/5.2/query-dsl-nested-query.html type NestedQuery struct { - query Query - path string - scoreMode string - boost *float64 - queryName string - innerHit *InnerHit + query Query + path string + scoreMode string + boost *float64 + queryName string + innerHit *InnerHit + ignoreUnmapped *bool } // NewNestedQuery creates and initializes a new NestedQuery. @@ -51,6 +52,13 @@ func (q *NestedQuery) InnerHit(innerHit *InnerHit) *NestedQuery { return q } +// IgnoreUnmapped sets the ignore_unmapped option for the filter that ignores +// unmapped nested fields +func (q *NestedQuery) IgnoreUnmapped(value bool) *NestedQuery { + q.ignoreUnmapped = &value + return q +} + // Source returns JSON for the query. func (q *NestedQuery) Source() (interface{}, error) { query := make(map[string]interface{}) @@ -74,6 +82,9 @@ func (q *NestedQuery) Source() (interface{}, error) { if q.queryName != "" { nq["_name"] = q.queryName } + if q.ignoreUnmapped != nil { + nq["ignore_unmapped"] = *q.ignoreUnmapped + } if q.innerHit != nil { src, err := q.innerHit.Source() if err != nil { |