Class: TripIt::AirObject
- Inherits:
-
ReservationObject
- Object
- Base
- BaseObject
- ReservationObject
- TripIt::AirObject
- Defined in:
- lib/trip_it/classes/objects/air_object.rb
Instance Attribute Summary
Attributes inherited from BaseObject
#id, #is_client_traveler, #relative_url
Instance Method Summary collapse
-
#initialize(client, obj_id = nil, source = nil) ⇒ AirObject
constructor
A new instance of AirObject.
- #populate(source) ⇒ Object
- #segment ⇒ Object
- #segment=(val) ⇒ Object
- #sequence ⇒ Object
Methods inherited from BaseObject
Methods inherited from Base
#Boolean, #camelize, #chkAndPopulate, #chkObjAndPopulate, #convertDT, #to_hash, #to_json, #to_xml
Methods included from ParamUtil
#address_param, #airportcode_param, #array_param, #boolean_param, #boolean_read_param, #camelize, #date_param, #datetime_param, #exceptions, #float_param, #integer_param, #string_param, #time_param, #traveler_array_param, #traveler_param
Constructor Details
#initialize(client, obj_id = nil, source = nil) ⇒ AirObject
Returns a new instance of AirObject.
5 6 7 8 9 10 11 |
# File 'lib/trip_it/classes/objects/air_object.rb', line 5 def initialize(client, obj_id = nil, source = nil) @client = client unless obj_id.nil? @obj_id = obj_id populate(source) end end |
Instance Method Details
#populate(source) ⇒ Object
13 14 15 16 17 18 19 20 |
# File 'lib/trip_it/classes/objects/air_object.rb', line 13 def populate(source) info = source || @client.get("/air", :id => @obj_id)["AirObject"] super(info) @segment = [] @traveler = [] chkAndPopulate(@segment, TripIt::AirSegment, info["Segment"]) chkAndPopulate(@traveler, TripIt::Traveler, info["Traveler"]) end |
#segment ⇒ Object
22 23 24 |
# File 'lib/trip_it/classes/objects/air_object.rb', line 22 def segment @segment end |
#segment=(val) ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/trip_it/classes/objects/air_object.rb', line 25 def segment=(val) if val.is_a?(Array) && val.all? { |e| AirSegment === e } @segment = val else raise ArgumentError, "Segment must be an Array of AirSegments" end end |
#sequence ⇒ Object
33 34 35 36 |
# File 'lib/trip_it/classes/objects/air_object.rb', line 33 def sequence arr = super arr + ["@segment", "@traveler"] end |