Class: ExpediaApi::Entities::FlightCombination
- Inherits:
-
Object
- Object
- ExpediaApi::Entities::FlightCombination
- Defined in:
- lib/expedia_api/entities/flight_combination.rb
Instance Attribute Summary collapse
-
#cheapest_combination_price ⇒ Object
Returns the value of attribute cheapest_combination_price.
-
#outbound_leg ⇒ Object
Returns the value of attribute outbound_leg.
-
#raw_data ⇒ Object
readonly
Returns the value of attribute raw_data.
-
#return_leg ⇒ Object
Returns the value of attribute return_leg.
Instance Method Summary collapse
-
#initialize(raw_data) ⇒ FlightCombination
constructor
A new instance of FlightCombination.
- #piid ⇒ Object
- #price_difference_to_cheapest_combination ⇒ Object
-
#total_price ⇒ Object
returns a money object including the price.
Constructor Details
#initialize(raw_data) ⇒ FlightCombination
Returns a new instance of FlightCombination.
7 8 9 |
# File 'lib/expedia_api/entities/flight_combination.rb', line 7 def initialize(raw_data) @raw_data = raw_data || {} end |
Instance Attribute Details
#cheapest_combination_price ⇒ Object
Returns the value of attribute cheapest_combination_price.
4 5 6 |
# File 'lib/expedia_api/entities/flight_combination.rb', line 4 def cheapest_combination_price @cheapest_combination_price end |
#outbound_leg ⇒ Object
Returns the value of attribute outbound_leg.
4 5 6 |
# File 'lib/expedia_api/entities/flight_combination.rb', line 4 def outbound_leg @outbound_leg end |
#raw_data ⇒ Object (readonly)
Returns the value of attribute raw_data.
5 6 7 |
# File 'lib/expedia_api/entities/flight_combination.rb', line 5 def raw_data @raw_data end |
#return_leg ⇒ Object
Returns the value of attribute return_leg.
4 5 6 |
# File 'lib/expedia_api/entities/flight_combination.rb', line 4 def return_leg @return_leg end |
Instance Method Details
#piid ⇒ Object
11 12 13 |
# File 'lib/expedia_api/entities/flight_combination.rb', line 11 def piid @raw_data[:PIID] end |
#price_difference_to_cheapest_combination ⇒ Object
24 25 26 27 |
# File 'lib/expedia_api/entities/flight_combination.rb', line 24 def price_difference_to_cheapest_combination return nil unless total_price && cheapest_combination_price total_price - Money.new(cheapest_combination_price[:Value].to_f * 100, cheapest_combination_price[:CurrencyCode]) end |
#total_price ⇒ Object
returns a money object including the price. returns nil if there is no price
16 17 18 19 20 21 22 |
# File 'lib/expedia_api/entities/flight_combination.rb', line 16 def total_price if raw_data[:PriceInformation] && raw_data[:PriceInformation][:TotalPrice] Money.new(raw_data[:PriceInformation][:TotalPrice][:Value].to_f * 100, raw_data[:PriceInformation][:TotalPrice][:CurrencyCode]) else nil end end |