Class: ReportsKit::ModelConfiguration

Inherits:
Object
  • Object
show all
Defined in:
lib/reports_kit/model_configuration.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeModelConfiguration

Returns a new instance of ModelConfiguration.



5
6
7
8
9
10
# File 'lib/reports_kit/model_configuration.rb', line 5

def initialize
  self.aggregations = []
  self.contextual_filters = []
  self.dimensions = []
  self.filters = []
end

Instance Attribute Details

#aggregationsObject

Returns the value of attribute aggregations.



3
4
5
# File 'lib/reports_kit/model_configuration.rb', line 3

def aggregations
  @aggregations
end

#contextual_filtersObject

Returns the value of attribute contextual_filters.



3
4
5
# File 'lib/reports_kit/model_configuration.rb', line 3

def contextual_filters
  @contextual_filters
end

#dimensionsObject

Returns the value of attribute dimensions.



3
4
5
# File 'lib/reports_kit/model_configuration.rb', line 3

def dimensions
  @dimensions
end

#filtersObject

Returns the value of attribute filters.



3
4
5
# File 'lib/reports_kit/model_configuration.rb', line 3

def filters
  @filters
end

Instance Method Details

#aggregation(key, expression, properties = {}) ⇒ Object



12
13
14
# File 'lib/reports_kit/model_configuration.rb', line 12

def aggregation(key, expression, properties = {})
  aggregations << { key: key.to_s, expression: expression }.merge(properties).symbolize_keys
end

#contextual_filter(key, method) ⇒ Object



16
17
18
# File 'lib/reports_kit/model_configuration.rb', line 16

def contextual_filter(key, method)
  contextual_filters << { key: key, method: method }
end

#dimension(key, properties) ⇒ Object



20
21
22
# File 'lib/reports_kit/model_configuration.rb', line 20

def dimension(key, properties)
  dimensions << { key: key.to_s }.merge(properties).symbolize_keys
end

#filter(key, type_key, properties) ⇒ Object



24
25
26
# File 'lib/reports_kit/model_configuration.rb', line 24

def filter(key, type_key, properties)
  filters << { key: key.to_s, type_key: type_key }.merge(properties).symbolize_keys
end