class ArtirixDataModels::Aggregation::Value
Attributes
aggregation_name[RW]
aggregations[W]
count[RW]
filtered[RW]
name[RW]
nested_aggregations=[W]
Public Class Methods
new(aggregation_name, name, count, aggregations)
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 82 def initialize(aggregation_name, name, count, aggregations) @aggregation_name = aggregation_name @name = name @count = count @aggregations = aggregations end
Public Instance Methods
aggregation(name)
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 108 def aggregation(name) n = name.to_sym aggregations.detect { |x| x.name == n } end
aggregations()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 89 def aggregations Array(@aggregations) end
Also aliased as: nested_aggregations
basic_data_hash()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 121 def basic_data_hash { name: name, count: count } end
data_hash()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 113 def data_hash basic_data_hash.tap do |h| if aggregations.present? h[:aggregations] = aggregations.map(&:data_hash) end end end
default_pretty_name()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 100 def default_pretty_name name end
empty?()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 104 def empty? count == 0 end
filtered?()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 136 def filtered? !!@filtered end
mark_filtered()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 128 def mark_filtered @filtered = true end
mark_unfiltered()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 132 def mark_unfiltered @filtered = false end
pretty_name()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 96 def pretty_name @pretty_name ||= load_pretty_name end
Private Instance Methods
load_pretty_name()
click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 141 def load_pretty_name tranlsation_key = "aggregations.#{aggregation_name.to_s.gsub('.', '_')}.buckets.#{name.to_s.gsub('.', '_')}" I18n.t(tranlsation_key, default: default_pretty_name) end