Class: TokyoMetro::Api::StationTrainTime

Inherits:
Object
  • Object
show all
Includes:
ClassNameLibrary::Api::StationTrainTime, Modules::Common::ToFactory::Seed::Info
Defined in:
lib/tokyo_metro/api/station_train_time.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods included from Modules::Common::ToFactory::Seed::Info

#seed

Constructor Details

#initialize(station_timetables, train_timetables) ⇒ StationTrainTime

Constructor

Parameters:



9
10
11
12
# File 'lib/tokyo_metro/api/station_train_time.rb', line 9

def initialize( station_timetables , train_timetables )
  @station_timetables = station_timetables
  @train_timetables = train_timetables
end

Instance Attribute Details

#station_timetablesTokyoMetro::Api::StationTimetable::List <TokyoMetro::Api::StationTimetable::Info> (readonly)

Returns 流し込みの対象となる列車時刻に関連する駅時刻表.

Returns:



15
16
17
# File 'lib/tokyo_metro/api/station_train_time.rb', line 15

def station_timetables
  @station_timetables
end

#train_timetablesTokyoMetro::Api::TrainTimetable::List <TokyoMetro::Api::TrainTimetable::Info> (readonly)

Returns 流し込みの対象となる列車時刻に関連する列車時刻表.

Returns:



18
19
20
# File 'lib/tokyo_metro/api/station_train_time.rb', line 18

def train_timetables
  @train_timetables
end

Class Method Details

.seed(*method_names_for_selecting_railway_line) ⇒ Object

Note:

method_names_for_selecting_railway_line を指定しない場合は、すべての駅時刻表・列車時刻表に対し処理を行う。

駅時刻表、列車時刻表を限定し DB への流し込みを行うクラスメソッド

Parameters:

  • method_names_for_selecting_railway_line (::Array <Symbol>)

    駅時刻表、列車時刻表を限定するためのメソッドの名称(可変長引数)



33
34
35
36
37
# File 'lib/tokyo_metro/api/station_train_time.rb', line 33

def self.seed( *method_names_for_selecting_railway_line )
  station_train_time_infos = self.new( ::TokyoMetro::Api.station_timetables , ::TokyoMetro::Api.train_timetables )
  station_train_time_infos.select_timetables!( *method_names_for_selecting_railway_line )
  station_train_time_infos.seed
end

Instance Method Details

#select_timetables!(*method_names_for_selecting_railway_line) ⇒ Object



20
21
22
23
24
25
26
27
28
# File 'lib/tokyo_metro/api/station_train_time.rb', line 20

def select_timetables!( *method_names_for_selecting_railway_line )
  unless method_names_for_selecting_railway_line.empty?
    @station_timetables = self.class.send( :proc_for_select_timetables ).call( method_names_for_selecting_railway_line , @station_timetables )
    @train_timetables = self.class.send( :proc_for_select_timetables ).call( method_names_for_selecting_railway_line , @train_timetables )
  end

  process_station_timetable_of_marunouchi_line( method_names_for_selecting_railway_line )
  process_station_timetable_of_namboku_line( method_names_for_selecting_railway_line )
end