diff options
Diffstat (limited to 'vendor/gopkg.in/olivere/elastic.v5/search_queries_indices.go')
-rw-r--r-- | vendor/gopkg.in/olivere/elastic.v5/search_queries_indices.go | 89 |
1 files changed, 0 insertions, 89 deletions
diff --git a/vendor/gopkg.in/olivere/elastic.v5/search_queries_indices.go b/vendor/gopkg.in/olivere/elastic.v5/search_queries_indices.go deleted file mode 100644 index ed5ec9d84..000000000 --- a/vendor/gopkg.in/olivere/elastic.v5/search_queries_indices.go +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright 2012-present Oliver Eilhard. All rights reserved. -// Use of this source code is governed by a MIT-license. -// See http://olivere.mit-license.org/license.txt for details. - -package elastic - -// IndicesQuery can be used when executed across multiple indices, allowing -// to have a query that executes only when executed on an index that matches -// a specific list of indices, and another query that executes when it is -// executed on an index that does not match the listed indices. -// -// For more details, see -// https://www.elastic.co/guide/en/elasticsearch/reference/5.2/query-dsl-indices-query.html -type IndicesQuery struct { - query Query - indices []string - noMatchQueryType string - noMatchQuery Query - queryName string -} - -// NewIndicesQuery creates and initializes a new indices query. -func NewIndicesQuery(query Query, indices ...string) *IndicesQuery { - return &IndicesQuery{ - query: query, - indices: indices, - } -} - -// NoMatchQuery sets the query to use when it executes on an index that -// does not match the indices provided. -func (q *IndicesQuery) NoMatchQuery(query Query) *IndicesQuery { - q.noMatchQuery = query - return q -} - -// NoMatchQueryType sets the no match query which can be either all or none. -func (q *IndicesQuery) NoMatchQueryType(typ string) *IndicesQuery { - q.noMatchQueryType = typ - return q -} - -// QueryName sets the query name for the filter. -func (q *IndicesQuery) QueryName(queryName string) *IndicesQuery { - q.queryName = queryName - return q -} - -// Source returns JSON for the function score query. -func (q *IndicesQuery) Source() (interface{}, error) { - // { - // "indices" : { - // "indices" : ["index1", "index2"], - // "query" : { - // "term" : { "tag" : "wow" } - // }, - // "no_match_query" : { - // "term" : { "tag" : "kow" } - // } - // } - // } - - source := make(map[string]interface{}) - params := make(map[string]interface{}) - source["indices"] = params - - params["indices"] = q.indices - - src, err := q.query.Source() - if err != nil { - return nil, err - } - params["query"] = src - - if q.noMatchQuery != nil { - src, err := q.noMatchQuery.Source() - if err != nil { - return nil, err - } - params["no_match_query"] = src - } else if q.noMatchQueryType != "" { - params["no_match_query"] = q.noMatchQueryType - } - if q.queryName != "" { - params["_name"] = q.queryName - } - - return source, nil -} |