Module: AboutYou::SDK::Model::AbstractBasketItem
- Included in:
- BasketItem, BasketSet
- Defined in:
- lib/AboutYou/Model/Basket/abstract_basket_item.rb
Overview
This class is an abstract model of a basket item
- author
-
Collins GmbH & Co KG
Constant Summary collapse
- IMAGE_URL_REQUIRED =
determines if the image url is required
false
Instance Attribute Summary collapse
-
#additional_data ⇒ Object
Additional data.
-
#is_changed ⇒ Object
determines whether a basket item is changed or not.
Instance Method Summary collapse
-
#addition_data=(additional_data) ⇒ Object
sets additional data for the basket item.
-
#check_additional_data(additional_data = nil) ⇒ Object
checks if certain additional_data is valid to set for a basket item or not.
-
#description ⇒ Object
gets the description of the basket item.
Instance Attribute Details
#additional_data ⇒ Object
Additional data
14 15 16 |
# File 'lib/AboutYou/Model/Basket/abstract_basket_item.rb', line 14 def additional_data @additional_data end |
#is_changed ⇒ Object
determines whether a basket item is changed or not
16 17 18 |
# File 'lib/AboutYou/Model/Basket/abstract_basket_item.rb', line 16 def is_changed @is_changed end |
Instance Method Details
#addition_data=(additional_data) ⇒ Object
sets additional data for the basket item
-
Args :
-
additional_data
-> the desired data to set
-
34 35 36 37 38 39 |
# File 'lib/AboutYou/Model/Basket/abstract_basket_item.rb', line 34 def addition_data=(additional_data) check_additional_data(additional_data) self.is_changed = true self.additional_data = additional_data end |
#check_additional_data(additional_data = nil) ⇒ Object
checks if certain additional_data is valid to set for a basket item or not
-
Args :
-
additional_data
-> the desired data to check
-
-
Fails :
-
if additional_data doesnt have a description
-
if additional_data doesnt have an image url and it would be required
-
51 52 53 54 55 56 57 58 |
# File 'lib/AboutYou/Model/Basket/abstract_basket_item.rb', line 51 def check_additional_data(additional_data = nil) return unless additional_data || IMAGE_URL_REQUIRED fail 'InvalidArgumentException! description is required in additional data' unless additional_data.key?('description') fail 'InvalidArgumentException! image_url is required in additional data' if IMAGE_URL_REQUIRED && !additional_data.key?('image_url') end |
#description ⇒ Object
gets the description of the basket item
-
Returns :
-
a String of null if no description is set
-
24 25 26 |
# File 'lib/AboutYou/Model/Basket/abstract_basket_item.rb', line 24 def description additional_data['description'] if additional_data end |