Class: ElasticGraph::GraphQL::Aggregation::FieldTermGrouping
- Inherits:
-
Object
- Object
- ElasticGraph::GraphQL::Aggregation::FieldTermGrouping
- Includes:
- TermGrouping
- Defined in:
- lib/elastic_graph/graphql/aggregation/field_term_grouping.rb
Constant Summary
Constants included from TermGrouping
Instance Method Summary collapse
-
#handles_missing_values? ⇒ Boolean
Returns true if this grouping handles missing values using a placeholder value instead of a separate missing aggregation.
- #inner_meta ⇒ Object
- #non_composite_clause_for(query) ⇒ Object
Methods included from TermGrouping
#composite_clause, #encoded_index_field_path, #key
Instance Method Details
#handles_missing_values? ⇒ Boolean
Returns true if this grouping handles missing values using a placeholder value instead of a separate missing aggregation.
22 23 24 |
# File 'lib/elastic_graph/graphql/aggregation/field_term_grouping.rb', line 22 def handles_missing_values? !missing_value_placeholder.nil? end |
#inner_meta ⇒ Object
32 33 34 35 36 |
# File 'lib/elastic_graph/graphql/aggregation/field_term_grouping.rb', line 32 def return super unless handles_missing_values? super.merge({"missing_values" => [missing_value_placeholder]}) end |
#non_composite_clause_for(query) ⇒ Object
26 27 28 29 30 |
# File 'lib/elastic_graph/graphql/aggregation/field_term_grouping.rb', line 26 def non_composite_clause_for(query) return super unless handles_missing_values? Support::HashUtil.deep_merge(super, {"terms" => {"missing" => missing_value_placeholder}}) end |