Module: ActiveReporting
- Defined in:
- lib/active_reporting/metric.rb,
lib/active_reporting/report.rb,
lib/active_reporting/version.rb,
lib/active_reporting/dimension.rb,
lib/active_reporting/fact_model.rb,
lib/active_reporting/configuration.rb,
lib/active_reporting/dimension_filter.rb,
lib/active_reporting/reporting_dimension.rb,
lib/active_reporting/active_record_adaptor.rb,
lib/active_reporting.rb
Defined Under Namespace
Modules: ActiveRecordAdaptor, Configuration Classes: Dimension, DimensionFilter, FactModel, Metric, Report, ReportingDimension
Constant Summary collapse
- AGGREGATES =
i(count sum max min avg).freeze
- VERSION =
'0.1.0'.freeze
- BadMetricLookupClass =
Class.new(StandardError)
- InvalidDimensionLabel =
Class.new(StandardError)
- RansackNotAvailable =
Class.new(StandardError)
- UnknownAggregate =
Class.new(StandardError)
- UnknownDimension =
Class.new(StandardError)
- UnknownDimensionFilter =
Class.new(StandardError)
- UnknownMetric =
Class.new(StandardError)
Class Method Summary collapse
Class Method Details
.fetch_metric(name) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/active_reporting.rb', line 22 def self.fetch_metric(name) klass = Configuration.metric_lookup_class unless defined?(klass.constantize) raise BadMetricLookupClass, "#{klass} not defined. Please define a class responsible for looking up a metric by name." + " You may define your own class and set it with `ActiveReporting::Configuration.metric_lookup_class=`." end unless klass.constantize.respond_to?(:lookup) raise BadMetricLookupClass, "#{klass} needs to define a class method called 'lookup'" end klass.constantize.lookup(name) end |