class Rome2rio::Segment
Attributes
distance[R]
duration[R]
indicativePrice[R]
isImperial[R]
isMajor[R]
itineraries[R]
kind[R]
path[R]
sCode[R]
sName[R]
sPos[R]
subkind[R]
tCode[R]
tName[R]
tPos[R]
Public Class Methods
new(json)
click to toggle source
# File lib/rome2rio/response/segment.rb, line 5 def initialize(json) # Possible kinds: walk, car, train, bus, ferry, flight @kind = json["kind"] @isMajor = json["isMajor"] == 1 @distance = json["distance"] @duration = json["duration"] @indicativePrice = IndicativePrice.new(json["indicativePrice"]) if @kind != "flight" then @isImperial = json["isImperial"] == 1 @sName = json["sName"] @sPos = Position.parse(json["sPos"]) @tName = json["tName"] @tPos = Position.parse(json["tPos"]) @path = json["path"] else @sCode = json["sCode"] @tCode = json["tCode"] @itineraries = [] json["itineraries"].each { |itinerary| @itineraries << FlightItinerary.new(itinerary) } end if [ "train", "bus", "ferry" ].include?(@kind) then @subkind = json["subkind"] @itineraries = [] json["itineraries"].each { |itinerary| @itineraries << TransitItinerary.new(itinerary) } end end