Class: Io::Flow::V0::Models::DiscountTarget
- Inherits:
-
Object
- Object
- Io::Flow::V0::Models::DiscountTarget
- Defined in:
- lib/flow_commerce/flow_api_v0_client.rb
Instance Attribute Summary collapse
-
#value ⇒ Object
readonly
Returns the value of attribute value.
Class Method Summary collapse
- .ALL ⇒ Object
-
.apply(value) ⇒ Object
Returns the instance of DiscountTarget for this value, creating a new instance for an unknown value.
-
.from_string(value) ⇒ Object
Returns the instance of DiscountTarget for this value, or nil if not found.
-
.item ⇒ Object
Discount is targeted to an item.
-
.shipping ⇒ Object
Discount is targeting to shipping.
Instance Method Summary collapse
-
#initialize(value) ⇒ DiscountTarget
constructor
A new instance of DiscountTarget.
- #to_hash ⇒ Object
Constructor Details
#initialize(value) ⇒ DiscountTarget
Returns a new instance of DiscountTarget.
13335 13336 13337 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13335 def initialize(value) @value = HttpClient::Preconditions.assert_class('value', value, String) end |
Instance Attribute Details
#value ⇒ Object (readonly)
Returns the value of attribute value.
13333 13334 13335 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13333 def value @value end |
Class Method Details
.ALL ⇒ Object
13355 13356 13357 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13355 def DiscountTarget.ALL @@all ||= [DiscountTarget.item, DiscountTarget.shipping] end |
.apply(value) ⇒ Object
Returns the instance of DiscountTarget for this value, creating a new instance for an unknown value
13340 13341 13342 13343 13344 13345 13346 13347 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13340 def DiscountTarget.apply(value) if value.instance_of?(DiscountTarget) value else HttpClient::Preconditions.assert_class_or_nil('value', value, String) value.nil? ? nil : (from_string(value) || DiscountTarget.new(value)) end end |
.from_string(value) ⇒ Object
Returns the instance of DiscountTarget for this value, or nil if not found
13350 13351 13352 13353 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13350 def DiscountTarget.from_string(value) HttpClient::Preconditions.assert_class('value', value, String) DiscountTarget.ALL.find { |v| v.value == value } end |
.item ⇒ Object
Discount is targeted to an item.
13360 13361 13362 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13360 def DiscountTarget.item @@_item ||= DiscountTarget.new('item') end |
.shipping ⇒ Object
Discount is targeting to shipping. Only applicable if the discount is provided at the order level.
13366 13367 13368 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13366 def DiscountTarget.shipping @@_shipping ||= DiscountTarget.new('shipping') end |
Instance Method Details
#to_hash ⇒ Object
13370 13371 13372 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 13370 def to_hash value end |