class ArtirixDataModels::Aggregation

Attributes

buckets[RW]

Public Class Methods

new(name, buckets) click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 39
def initialize(name, buckets)
  super name
  @buckets = buckets
end

Public Instance Methods

calculate_filtered(filtered_values = []) click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 57
def calculate_filtered(filtered_values = [])
  buckets.each do |b|
    b.filtered = filtered_values.include?(b.name)
  end

  self
end
data_hash() click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 50
def data_hash
  {
    name:    name,
    buckets: buckets.map(&:data_hash)
  }
end
filtered_buckets() click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 65
def filtered_buckets
  buckets.select &:filtered?
end
filtered_first_buckets() click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 73
def filtered_first_buckets
  filtered_buckets + unfiltered_buckets
end
non_empty_buckets() click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 46
def non_empty_buckets
  buckets.reject { |x| x.empty? }
end
unfiltered_buckets() click to toggle source
# File lib/artirix_data_models/aggregation.rb, line 69
def unfiltered_buckets
  buckets.reject &:filtered?
end