Class: ArtirixDataModels::RawAggregationDataNormaliser
- Inherits:
-
Object
- Object
- ArtirixDataModels::RawAggregationDataNormaliser
- Defined in:
- lib/artirix_data_models/raw_aggregation_data_normaliser.rb
Constant Summary collapse
- IS_NESTED_COUNTS =
->(v) { v.respond_to?(:key?) && v.key?(:doc_count) && v.keys.size == 1 }
- FIND_BUCKETS =
->(_k, v, _o) { v.respond_to?(:key?) && v.key?(:buckets) }
- FIND_VALUE =
->(_k, v, _o) { v.respond_to?(:key?) && v.key?(:value) }
- FIND_COUNTS =
->(_k, v, _o) do v.respond_to?(:key) && v.key?(:doc_count) && v.respond_to?(:values) && v.values.any? { |x| IS_NESTED_COUNTS.call(x) } end
Instance Attribute Summary collapse
-
#aggregations_factory ⇒ Object
readonly
Returns the value of attribute aggregations_factory.
-
#list ⇒ Object
readonly
Returns the value of attribute list.
-
#raw_aggs ⇒ Object
readonly
Returns the value of attribute raw_aggs.
Instance Method Summary collapse
-
#initialize(aggregations_factory, raw_aggs) ⇒ RawAggregationDataNormaliser
constructor
A new instance of RawAggregationDataNormaliser.
- #normalise ⇒ Object (also: #call)
Constructor Details
#initialize(aggregations_factory, raw_aggs) ⇒ RawAggregationDataNormaliser
Returns a new instance of RawAggregationDataNormaliser.
17 18 19 20 21 |
# File 'lib/artirix_data_models/raw_aggregation_data_normaliser.rb', line 17 def initialize(aggregations_factory, raw_aggs) @aggregations_factory = aggregations_factory @raw_aggs = raw_aggs @list = [] end |
Instance Attribute Details
#aggregations_factory ⇒ Object (readonly)
Returns the value of attribute aggregations_factory.
15 16 17 |
# File 'lib/artirix_data_models/raw_aggregation_data_normaliser.rb', line 15 def aggregations_factory @aggregations_factory end |
#list ⇒ Object (readonly)
Returns the value of attribute list.
15 16 17 |
# File 'lib/artirix_data_models/raw_aggregation_data_normaliser.rb', line 15 def list @list end |
#raw_aggs ⇒ Object (readonly)
Returns the value of attribute raw_aggs.
15 16 17 |
# File 'lib/artirix_data_models/raw_aggregation_data_normaliser.rb', line 15 def raw_aggs @raw_aggs end |
Instance Method Details
#normalise ⇒ Object Also known as: call
23 24 25 26 27 28 29 30 |
# File 'lib/artirix_data_models/raw_aggregation_data_normaliser.rb', line 23 def normalise return [] unless raw_aggs.present? return raw_aggs if Array === raw_aggs normalise_hash(raw_aggs) list end |