Module: Staccato::Measurement

Defined in:
lib/staccato/measurement.rb,
lib/staccato/measurement/product.rb,
lib/staccato/measurement/checkout.rb,
lib/staccato/measurement/promotion.rb,
lib/staccato/measurement/transaction.rb,
lib/staccato/measurement/checkout_option.rb,
lib/staccato/measurement/impression_list.rb,
lib/staccato/measurement/product_impression.rb

Overview

Classes for measurements to be add to Hits

Defined Under Namespace

Classes: Checkout, CheckoutOption, ImpressionList, Product, ProductImpression, Promotion, Transaction

Constant Summary collapse

TYPES =

List of measurement classes by lookup key

Hash[
  [
    Checkout,
    CheckoutOption,
    ImpressionList,
    Product,
    ProductImpression,
    Promotion,
    Transaction
  ].map { |k| [k.lookup_key, k] }
].freeze

Class Method Summary collapse

Class Method Details

.lookup(key) ⇒ Class

Lookup a measurement class by its key

Parameters:

  • key (Symbol)

Returns:

  • (Class)

    measurement class or NullMeasurement



31
32
33
# File 'lib/staccato/measurement.rb', line 31

def lookup(key)
  measurement_types[key] || NullMeasurement
end

.measurement_typesHash

List of measurement classes by lookup key

Returns:

  • (Hash)


38
39
40
# File 'lib/staccato/measurement.rb', line 38

def measurement_types
  TYPES
end