Class: Observation

Inherits:
Object
  • Object
show all
Defined in:
lib/logbox/observation.rb

Constant Summary collapse

BASIC_ATTRIBUTES_NAMES =
{
  :aid => :account_id,
  :sid => :shop_id,
  :uid => :user_id,
  :u   => :document_url,
  :r   => :referrer,
  :t   => :document_title,
  :s   => :screen_resolution,
  :l   => :browser_language,
  :p   => :platform,
  :a   => :user_agent,
  :h   => :history_count,
  :n   => :navigator_name,
  :z   => :time_zone_offset,
  :x   => :seed,
  :o   => :observation_type
}
OBSERVATION_ATTRIBUTES_NAMES =
{
  :_item_id       => :item_id,
  :_rec_for       => :rec_for,
  :_title         => :title,
  :_url           => :url,
  :_basket_url    => :basket_url,
  :_description   => :description,
  :_normal_price  => :normal_price,
  :_current_price => :current_price,
  :_thumbnail     => :thumbnail,
  :_image         => :image,
  :_stock         => :stock,
  :_expires       => :expires,
  :_order_blob    => :order_blob,
  :_order_id      => :order_id,
  :_sku           => :sku,
  :_quantity      => :quantity,
  :_tags          => :tags,
  :_user1         => :user1,
  :_user2         => :user2,
  :_user3         => :user3,
  :_user4         => :user4,
  :_user5         => :user5,
  :_culture       => :culture,
  :_currency      => :currency,
  :_group_ref     => :group_ref,
  :_with_vat      => :with_vat
}
BASIC_ATTRIBUTES =
BASIC_ATTRIBUTES_NAMES.values
OBSERVATION_ATTRIBUTES =
OBSERVATION_ATTRIBUTES_NAMES.values
ITEM_ATTRIBUTES =
OBSERVATION_ATTRIBUTES
OBSERVATION_TYPE_STRINGS =
%w[visit_page view_item pick_item buy_basket buy_item view_recommendation heed_recommendation]
OBSERVATION_TYPES =
OBSERVATION_TYPE_STRINGS.map { |e| e.to_sym }

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(logline_attributes) ⇒ Observation

Returns a new instance of Observation.



62
63
64
65
66
# File 'lib/logbox/observation.rb', line 62

def initialize(logline_attributes)
  transfer_attributes(logline_attributes.clone)
  validate_type
  ensure_correct_urls
end

Instance Attribute Details

#attributesObject (readonly)

Konverterade med ett stort perl-uttryck: perl -pi -e ‘s/()_id=/1_item_id=/g; s/currentprice/current_price/g; s/normalprice/normal_price/g; s/basketurl/basket_url/g; s/()_type=/1o=/g; s/buyitem/pick_item/g; s/viewitem/view_item/g; s/searchclick/search_pick_item/g; s/sid=bwintest/aid=bwin/g; s/sid=/aid=crossroads&sid=/g; s/aid=bwin/aid=bwin&sid=bwintest/g;’ observer.access.log.*



60
61
62
# File 'lib/logbox/observation.rb', line 60

def attributes
  @attributes
end

#errorsObject (readonly)

Konverterade med ett stort perl-uttryck: perl -pi -e ‘s/()_id=/1_item_id=/g; s/currentprice/current_price/g; s/normalprice/normal_price/g; s/basketurl/basket_url/g; s/()_type=/1o=/g; s/buyitem/pick_item/g; s/viewitem/view_item/g; s/searchclick/search_pick_item/g; s/sid=bwintest/aid=bwin/g; s/sid=/aid=crossroads&sid=/g; s/aid=bwin/aid=bwin&sid=bwintest/g;’ observer.access.log.*



60
61
62
# File 'lib/logbox/observation.rb', line 60

def errors
  @errors
end

#typeObject (readonly)

Konverterade med ett stort perl-uttryck: perl -pi -e ‘s/()_id=/1_item_id=/g; s/currentprice/current_price/g; s/normalprice/normal_price/g; s/basketurl/basket_url/g; s/()_type=/1o=/g; s/buyitem/pick_item/g; s/viewitem/view_item/g; s/searchclick/search_pick_item/g; s/sid=bwintest/aid=bwin/g; s/sid=/aid=crossroads&sid=/g; s/aid=bwin/aid=bwin&sid=bwintest/g;’ observer.access.log.*



60
61
62
# File 'lib/logbox/observation.rb', line 60

def type
  @type
end

#unknown_attributesObject (readonly)

Konverterade med ett stort perl-uttryck: perl -pi -e ‘s/()_id=/1_item_id=/g; s/currentprice/current_price/g; s/normalprice/normal_price/g; s/basketurl/basket_url/g; s/()_type=/1o=/g; s/buyitem/pick_item/g; s/viewitem/view_item/g; s/searchclick/search_pick_item/g; s/sid=bwintest/aid=bwin/g; s/sid=/aid=crossroads&sid=/g; s/aid=bwin/aid=bwin&sid=bwintest/g;’ observer.access.log.*



60
61
62
# File 'lib/logbox/observation.rb', line 60

def unknown_attributes
  @unknown_attributes
end

Instance Method Details

#[](key) ⇒ Object



72
73
74
# File 'lib/logbox/observation.rb', line 72

def [](key)
  @attributes[key]
end

#buy_item?Boolean

Returns:

  • (Boolean)


84
85
86
# File 'lib/logbox/observation.rb', line 84

def buy_item?
  @type == :buy_item
end

#pick_item?Boolean

Returns:

  • (Boolean)


80
81
82
# File 'lib/logbox/observation.rb', line 80

def pick_item?
  @type == :pick_item
end

#valid?Boolean

Returns:

  • (Boolean)


68
69
70
# File 'lib/logbox/observation.rb', line 68

def valid?
  @errors.empty?
end

#view_item?Boolean

Returns:

  • (Boolean)


76
77
78
# File 'lib/logbox/observation.rb', line 76

def view_item?
  @type == :view_item
end