Class: ArtirixDataModels::AggregationBuilder
- Inherits:
-
Object
- Object
- ArtirixDataModels::AggregationBuilder
- Defined in:
- lib/artirix_data_models/aggregation_builder.rb
Instance Attribute Summary collapse
-
#aggregation_class ⇒ Object
readonly
Returns the value of attribute aggregation_class.
-
#aggregations_factory ⇒ Object
readonly
Returns the value of attribute aggregations_factory.
-
#definition ⇒ Object
readonly
Returns the value of attribute definition.
-
#metric_aggregation_class ⇒ Object
readonly
Returns the value of attribute metric_aggregation_class.
-
#value_class ⇒ Object
readonly
Returns the value of attribute value_class.
Instance Method Summary collapse
- #build ⇒ Object (also: #call)
-
#initialize(aggregations_factory:, definition:, aggregation_class: Aggregation, metric_aggregation_class: MetricAggregation, value_class: Aggregation::Value) ⇒ AggregationBuilder
constructor
A new instance of AggregationBuilder.
Constructor Details
#initialize(aggregations_factory:, definition:, aggregation_class: Aggregation, metric_aggregation_class: MetricAggregation, value_class: Aggregation::Value) ⇒ AggregationBuilder
Returns a new instance of AggregationBuilder.
6 7 8 9 10 11 12 |
# File 'lib/artirix_data_models/aggregation_builder.rb', line 6 def initialize(aggregations_factory:, definition:, aggregation_class: Aggregation, metric_aggregation_class: MetricAggregation, value_class: Aggregation::Value) @aggregations_factory = aggregations_factory @definition = definition @aggregation_class = aggregation_class @metric_aggregation_class = metric_aggregation_class || aggregation_class @value_class = value_class end |
Instance Attribute Details
#aggregation_class ⇒ Object (readonly)
Returns the value of attribute aggregation_class.
4 5 6 |
# File 'lib/artirix_data_models/aggregation_builder.rb', line 4 def aggregation_class @aggregation_class end |
#aggregations_factory ⇒ Object (readonly)
Returns the value of attribute aggregations_factory.
4 5 6 |
# File 'lib/artirix_data_models/aggregation_builder.rb', line 4 def aggregations_factory @aggregations_factory end |
#definition ⇒ Object (readonly)
Returns the value of attribute definition.
4 5 6 |
# File 'lib/artirix_data_models/aggregation_builder.rb', line 4 def definition @definition end |
#metric_aggregation_class ⇒ Object (readonly)
Returns the value of attribute metric_aggregation_class.
4 5 6 |
# File 'lib/artirix_data_models/aggregation_builder.rb', line 4 def metric_aggregation_class @metric_aggregation_class end |
#value_class ⇒ Object (readonly)
Returns the value of attribute value_class.
4 5 6 |
# File 'lib/artirix_data_models/aggregation_builder.rb', line 4 def value_class @value_class end |
Instance Method Details
#build ⇒ Object Also known as: call
14 15 16 17 18 19 20 |
# File 'lib/artirix_data_models/aggregation_builder.rb', line 14 def build if is_metric? metric_aggregation_class.new agg_name, value else aggregation_class.new agg_name, buckets end end |