Class: AboutYou::SDK::Model::VariantsResult
- Inherits:
-
Object
- Object
- AboutYou::SDK::Model::VariantsResult
- Defined in:
- lib/AboutYou/Model/variants_result.rb
Overview
This class represents a variants result
Instance Attribute Summary collapse
-
#errors ⇒ Object
Array of Errors.
-
#variants ⇒ Object
Array of AboutYou::SDK::Model::Variant.
Class Method Summary collapse
-
.create(variants, errors = [], product_search_result) ⇒ Object
This method is used for creating the variants result.
Instance Method Summary collapse
-
#variant_by_id(id) ⇒ Object
-
Returns : - nil / instance of AboutYou::SDK::Model::Variant.
-
-
#variants_found ⇒ Object
Getter for the found variants.
-
#variants_found? ⇒ Boolean
This method checks if there are variants found.
-
#variants_not_found ⇒ Object
geter for the not found variants.
-
#variants_not_found? ⇒ Boolean
This method checks if there are variants not found.
Instance Attribute Details
#errors ⇒ Object
Array of Errors
11 12 13 |
# File 'lib/AboutYou/Model/variants_result.rb', line 11 def errors @errors end |
#variants ⇒ Object
Array of AboutYou::SDK::Model::Variant
9 10 11 |
# File 'lib/AboutYou/Model/variants_result.rb', line 9 def variants @variants end |
Class Method Details
.create(variants, errors = [], product_search_result) ⇒ Object
This method is used for creating the variants result
-
Args :
-
variants-> Array of AboutYou::SDK::Model::Variant -
errors-> Array of Errors [optional] -
product_search_result-> AboutYou::SDK::Model::ProductSearchResult [optional]
-
-
Returns :
-
Instance of AboutYou::SDK::Model::VariantsResult
-
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
# File 'lib/AboutYou/Model/variants_result.rb', line 24 def self.create(variants, errors = [], product_search_result) variants_result = new variants_result.variants = {} variants_result.errors = errors # no variant was found return variants_result if product_search_result == false || variants.count == 0 # get products from product-search products = product_search_result.products variants.each do |variant_id, product_id| unless products[product_id] # product was not delivered variants_result.errors.push(variant_id) next end product = products[product_id] variant = product.variant_by_id(variant_id) variants_result.variants[variant_id] = variant if variant.is_a?(AboutYou::SDK::Model::Variant) end variants_result end |
Instance Method Details
#variant_by_id(id) ⇒ Object
-
Returns :
-
nil / instance of AboutYou::SDK::Model::Variant
-
91 92 93 |
# File 'lib/AboutYou/Model/variants_result.rb', line 91 def variant_by_id(id) variants[id] ? variants[id] : nil end |
#variants_found ⇒ Object
Getter for the found variants
-
Returns :
-
Array of AboutYou::SDK::Model::Variant
-
78 79 80 |
# File 'lib/AboutYou/Model/variants_result.rb', line 78 def variants_found variants end |
#variants_found? ⇒ Boolean
This method checks if there are variants found
-
Returns :
-
Boolean determining whether the result has found variants or not
-
58 59 60 |
# File 'lib/AboutYou/Model/variants_result.rb', line 58 def variants_found? variants.count > 0 end |
#variants_not_found ⇒ Object
geter for the not found variants
-
Returns :
-
Array of AboutYou::SDK::Model::Variant
-
101 102 103 |
# File 'lib/AboutYou/Model/variants_result.rb', line 101 def variants_not_found errors end |
#variants_not_found? ⇒ Boolean
This method checks if there are variants not found
-
Returns :
-
Boolean determining whether the result has not found variants or not
-
68 69 70 |
# File 'lib/AboutYou/Model/variants_result.rb', line 68 def variants_not_found? errors.count > 0 end |