Class: Io::Flow::V0::Models::FlatRate
- Inherits:
-
TierRuleOutcome
- Object
- TierRuleOutcome
- Io::Flow::V0::Models::FlatRate
- Defined in:
- lib/flow_commerce/flow_api_v0_client.rb
Overview
Rule outcome where shipping surfaced in quote is pre-defined flat rate
Instance Attribute Summary collapse
-
#price ⇒ Object
readonly
Returns the value of attribute price.
-
#zero_amount_indicator ⇒ Object
readonly
Returns the value of attribute zero_amount_indicator.
Attributes inherited from TierRuleOutcome
Instance Method Summary collapse
- #copy(incoming = {}) ⇒ Object
-
#initialize(incoming = {}) ⇒ FlatRate
constructor
A new instance of FlatRate.
- #subtype_to_hash ⇒ Object
- #to_json ⇒ Object
Methods inherited from TierRuleOutcome
Constructor Details
#initialize(incoming = {}) ⇒ FlatRate
Returns a new instance of FlatRate.
40018 40019 40020 40021 40022 40023 40024 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 40018 def initialize(incoming={}) super(:discriminator => TierRuleOutcome::Types::FLAT_RATE) opts = HttpClient::Helper.symbolize_keys(incoming) HttpClient::Preconditions.require_keys(opts, [:price], 'FlatRate') @price = (x = opts.delete(:price); x.is_a?(::Io::Flow::V0::Models::Price) ? x : ::Io::Flow::V0::Models::Price.new(x)) @zero_amount_indicator = (x = opts.delete(:zero_amount_indicator); x.nil? ? nil : (x = x; x.is_a?(::Io::Flow::V0::Models::ZeroAmountIndicator) ? x : ::Io::Flow::V0::Models::ZeroAmountIndicator.apply(x))) end |
Instance Attribute Details
#price ⇒ Object (readonly)
Returns the value of attribute price.
40016 40017 40018 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 40016 def price @price end |
#zero_amount_indicator ⇒ Object (readonly)
Returns the value of attribute zero_amount_indicator.
40016 40017 40018 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 40016 def zero_amount_indicator @zero_amount_indicator end |
Instance Method Details
#copy(incoming = {}) ⇒ Object
40030 40031 40032 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 40030 def copy(incoming={}) FlatRate.new(subtype_to_hash.merge(HttpClient::Helper.symbolize_keys(incoming))) end |
#subtype_to_hash ⇒ Object
40034 40035 40036 40037 40038 40039 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 40034 def subtype_to_hash { :price => price.to_hash, :zero_amount_indicator => zero_amount_indicator.nil? ? nil : zero_amount_indicator.value } end |
#to_json ⇒ Object
40026 40027 40028 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 40026 def to_json JSON.dump(to_hash) end |