Class: Io::Flow::V0::Models::LaneStrategy
- Inherits:
-
Object
- Object
- Io::Flow::V0::Models::LaneStrategy
- 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 LaneStrategy for this value, creating a new instance for an unknown value.
-
.fastest ⇒ Object
Optimize for fastest average time in transit across all tiers from the center on the lane.
-
.from_string(value) ⇒ Object
Returns the instance of LaneStrategy for this value, or nil if not found.
-
.highest_priority ⇒ Object
Get the highest priority center for the shipping lane.
-
.lowest_cost ⇒ Object
Optimize for lowest average cost across all tiers from the center on the lane.
-
.oldest ⇒ Object
Use the oldest center by creation date.
Instance Method Summary collapse
-
#initialize(value) ⇒ LaneStrategy
constructor
A new instance of LaneStrategy.
- #to_hash ⇒ Object
Constructor Details
#initialize(value) ⇒ LaneStrategy
17512 17513 17514 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17512 def initialize(value) @value = HttpClient::Preconditions.assert_class('value', value, String) end |
Instance Attribute Details
#value ⇒ Object (readonly)
Returns the value of attribute value.
17510 17511 17512 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17510 def value @value end |
Class Method Details
.ALL ⇒ Object
17532 17533 17534 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17532 def LaneStrategy.ALL @@all ||= [LaneStrategy.oldest, LaneStrategy.fastest, LaneStrategy.lowest_cost, LaneStrategy.highest_priority] end |
.apply(value) ⇒ Object
Returns the instance of LaneStrategy for this value, creating a new instance for an unknown value
17517 17518 17519 17520 17521 17522 17523 17524 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17517 def LaneStrategy.apply(value) if value.instance_of?(LaneStrategy) value else HttpClient::Preconditions.assert_class_or_nil('value', value, String) value.nil? ? nil : (from_string(value) || LaneStrategy.new(value)) end end |
.fastest ⇒ Object
Optimize for fastest average time in transit across all tiers from the center on the lane
17543 17544 17545 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17543 def LaneStrategy.fastest @@_fastest ||= LaneStrategy.new('fastest') end |
.from_string(value) ⇒ Object
Returns the instance of LaneStrategy for this value, or nil if not found
17527 17528 17529 17530 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17527 def LaneStrategy.from_string(value) HttpClient::Preconditions.assert_class('value', value, String) LaneStrategy.ALL.find { |v| v.value == value } end |
.highest_priority ⇒ Object
Get the highest priority center for the shipping lane
17553 17554 17555 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17553 def LaneStrategy.highest_priority @@_highest_priority ||= LaneStrategy.new('highest_priority') end |
.lowest_cost ⇒ Object
Optimize for lowest average cost across all tiers from the center on the lane
17548 17549 17550 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17548 def LaneStrategy.lowest_cost @@_lowest_cost ||= LaneStrategy.new('lowest_cost') end |
.oldest ⇒ Object
Use the oldest center by creation date.
17537 17538 17539 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17537 def LaneStrategy.oldest @@_oldest ||= LaneStrategy.new('oldest') end |
Instance Method Details
#to_hash ⇒ Object
17557 17558 17559 |
# File 'lib/flow_commerce/flow_api_v0_client.rb', line 17557 def to_hash value end |