class TokyoMetro::Api::TrainTimetable::Info::StationTime::Info

個別の駅の発着時刻情報のクラス

Attributes

arrival_station[R]
arrival_time[R]
departure_station[R]
departure_time[R]

Public Class Methods

factory_for_this_class() click to toggle source
# File lib/tokyo_metro/api/train_timetable/info/station_time/info.rb, line 76
def self.factory_for_this_class
  factory_for_generating_station_time_from_hash
end
new( arrival_time , arrival_station , departure_time , departure_station ) click to toggle source
# File lib/tokyo_metro/api/train_timetable/info/station_time/info.rb, line 12
def initialize( arrival_time , arrival_station , departure_time , departure_station )
  @arrival_time = arrival_time
  @arrival_station = arrival_station
  @departure_time = departure_time
  @departure_station = departure_station

  @seed_completed = false
end

Public Instance Methods

is_at?( station_same_as ) click to toggle source
# File lib/tokyo_metro/api/train_timetable/info/station_time/info.rb, line 38
def is_at?( station_same_as )
  station.values.include?( station_same_as )
end
only_arrival_time_is_defined?() click to toggle source
# File lib/tokyo_metro/api/train_timetable/info/station_time/info.rb, line 72
def only_arrival_time_is_defined?
  @arrival_time.present? and @departure_time.nil?
end
station() click to toggle source
# File lib/tokyo_metro/api/train_timetable/info/station_time/info.rb, line 26
def station
  h = ::Hash.new
  if @arrival_station.present?
    h[ :arrival ] = @arrival_station
  elsif @departure_station.present?
    h[ :departure ] = @departure_station
  else
    raise "Error"
  end
  h
end
station_info_ids() click to toggle source
# File lib/tokyo_metro/api/train_timetable/info/station_time/info.rb, line 80
def station_info_ids
  h = ::Hash.new
  self.station.each do | k , v |
    h[k] = ::Station::Info.find_by_same_as( v ).id
  end
  h
end
time() click to toggle source
# File lib/tokyo_metro/api/train_timetable/info/station_time/info.rb, line 42
def time
  h = ::Hash.new
  if @arrival_time.present?
    h[ :arrival ] = [ @arrival_time.hour , @arrival_time.min ]
  end
  if @departure_time.present?
    h[ :departure ] = [ @departure_time.hour , @departure_time.min ]
  end
  h
end
time_to_h() click to toggle source
# File lib/tokyo_metro/api/train_timetable/info/station_time/info.rb, line 53
def time_to_h
  if @arrival_time.present?
    arrival_time_hour , arrival_time_min = @arrival_time.hour , @arrival_time.min
  else
    arrival_time_hour , arrival_time_min = nil , nil
  end
  if @departure_time.present?
    departure_time_hour , departure_time_min = @departure_time.hour , @departure_time.min
  else
    departure_time_hour , departure_time_min = nil , nil
  end
  {
    arrival_time_hour: arrival_time_hour ,
    arrival_time_min: arrival_time_min ,
    departure_time_hour: departure_time_hour ,
    departure_time_min: departure_time_min
  }
end