Class: TokyoMetro::Api::Station::Info
- Inherits:
-
MetaClass::Hybrid::Info
- Object
- MetaClass::Fundamental::Info
- MetaClass::Hybrid::Info
- TokyoMetro::Api::Station::Info
- Includes:
- ClassNameLibrary::Api::Station, Modules::Api::Info::Decision::CurrentStation, Modules::Api::Info::Decision::RailwayLine, Modules::Api::Info::ToJson, Modules::Api::Info::ToStringGeneral, Modules::Api::Info::ToStringWithArray, Modules::Common::Info::Decision::CompareBase, Modules::Common::ToFactory::Seed::Info
- Defined in:
- lib/tokyo_metro/api/station/info.rb
Overview
個別の駅情報を扱うクラス
Defined Under Namespace
Modules: Common, ConnectingRailwayLine, Exit, LinkToPassengerSurvey
メタデータ (For developers) collapse
-
#dc_date ⇒ DateTime
readonly
データ生成時刻 - xsd:dateTime(ISO8601 日付時刻形式をもとに生成した DateTime のインスタンス).
-
#id_urn ⇒ Object
readonly
Returns the value of attribute id_urn.
-
#same_as ⇒ String
readonly
固有識別子 - URL.
地理情報 (For developers) collapse
-
#geo_lat ⇒ Float
(also: #latitude)
readonly
代表点の緯度(10進表記).
-
#geo_long ⇒ Float
(also: #longitude)
readonly
代表点の経度(10進表記).
-
#region ⇒ String
(also: #geo_json)
readonly
駅代表点のデータを GeoJSON で取得するためのURL <ug:region - odpt:GeoDocument>.
一般の情報 collapse
-
#connecting_railway_lines ⇒ ::Array <odpt:Railway>
readonly
乗り換え可能路線の一覧.
-
#exit_list ⇒ Info::Exit::List <ug:Poi>
readonly
駅出入口を表すオブジェクトへのリンク - odpt:exit.
-
#facility ⇒ ::Array <odpt:StationFacility>
readonly
駅施設を表すオブジェクトのURI - odpt:facility.
-
#operator ⇒ String
readonly
管理会社 - odpt:operator.
-
#passenger_survey ⇒ Info::LinkToPassengerSurvey::List <odpt:PassengerSurvey>
readonly
駅乗降人員数を表すオブジェクトへのリンク - odpt:passengerSurvey.
-
#railway_line ⇒ String
readonly
鉄道路線ID - odpt:Railway.
-
#station_code ⇒ String
readonly
駅コード - odpt:stationCode.
-
#title ⇒ String
(also: #station)
readonly
駅名 - dc:title.
駅情報の取得 collapse
- #basename ⇒ Object
- #basename_to_display ⇒ Object
- #seed_connecting_railway_lines(indent) ⇒ Object
- #seed_exits(indent) ⇒ Object
- #seed_link_to_passenger_surveys(indent) ⇒ Object
- #title_shift_jis ⇒ Object (also: #name_ja)
-
#to_h ⇒ Hash
インスタンスの情報をハッシュにして返すメソッド.
-
#to_s(indent = 0) ⇒ String
(also: #to_strf)
インスタンスの情報を文字列にして返すメソッド.
Instance Method Summary collapse
-
#initialize(id_urn, same_as, title, dc_date, geo_long, geo_lat, region, operator, railway_line, connecting_railway_lines, facility, passenger_survey, station_code, exit_list) ⇒ Info
constructor
Constructor.
Methods included from Modules::Common::ToFactory::Seed::Info
Methods included from Modules::Common::Info::Decision::RailwayLine
#on_marunouchi_line_including_branch?, #on_namboku_or_toei_mita_line?, #on_toei_mita_line?, #on_yurakucho_or_fukutoshin_line?
Methods included from Modules::Api::Info::ToJson
Constructor Details
#initialize(id_urn, same_as, title, dc_date, geo_long, geo_lat, region, operator, railway_line, connecting_railway_lines, facility, passenger_survey, station_code, exit_list) ⇒ Info
Constructor
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/tokyo_metro/api/station/info.rb', line 17 def initialize( id_urn , same_as , title , dc_date , geo_long , geo_lat , region , operator , railway_line , connecting_railway_lines , facility , passenger_survey , station_code , exit_list ) @id_urn = id_urn @same_as = same_as @title , @dc_date = title , dc_date @geo_long = geo_long @geo_lat = geo_lat @region = region @operator = operator @railway_line = railway_line @connecting_railway_lines = connecting_railway_lines @facility = facility @passenger_survey = passenger_survey @station_code = station_code @exit_list = exit_list end |
Instance Attribute Details
#connecting_railway_lines ⇒ ::Array <odpt:Railway> (readonly)
乗り換え可能路線の一覧
83 84 85 |
# File 'lib/tokyo_metro/api/station/info.rb', line 83 def connecting_railway_lines @connecting_railway_lines end |
#dc_date ⇒ DateTime (readonly)
データ生成時刻 - xsd:dateTime(ISO8601 日付時刻形式をもとに生成した DateTime のインスタンス)
48 49 50 |
# File 'lib/tokyo_metro/api/station/info.rb', line 48 def dc_date @dc_date end |
#exit_list ⇒ Info::Exit::List <ug:Poi> (readonly)
駅出入口を表すオブジェクトへのリンク - odpt:exit
99 100 101 |
# File 'lib/tokyo_metro/api/station/info.rb', line 99 def exit_list @exit_list end |
#facility ⇒ ::Array <odpt:StationFacility> (readonly)
駅施設を表すオブジェクトのURI - odpt:facility
87 88 89 |
# File 'lib/tokyo_metro/api/station/info.rb', line 87 def facility @facility end |
#geo_lat ⇒ Float (readonly) Also known as: latitude
代表点の緯度(10進表記)
58 59 60 |
# File 'lib/tokyo_metro/api/station/info.rb', line 58 def geo_lat @geo_lat end |
#geo_long ⇒ Float (readonly) Also known as: longitude
代表点の経度(10進表記)
54 55 56 |
# File 'lib/tokyo_metro/api/station/info.rb', line 54 def geo_long @geo_long end |
#id_urn ⇒ Object (readonly)
Returns the value of attribute id_urn.
37 38 39 |
# File 'lib/tokyo_metro/api/station/info.rb', line 37 def id_urn @id_urn end |
#operator ⇒ String (readonly)
管理会社 - odpt:operator
75 76 77 |
# File 'lib/tokyo_metro/api/station/info.rb', line 75 def operator @operator end |
#passenger_survey ⇒ Info::LinkToPassengerSurvey::List <odpt:PassengerSurvey> (readonly)
駅乗降人員数を表すオブジェクトへのリンク - odpt:passengerSurvey
91 92 93 |
# File 'lib/tokyo_metro/api/station/info.rb', line 91 def passenger_survey @passenger_survey end |
#railway_line ⇒ String (readonly)
鉄道路線ID - odpt:Railway
79 80 81 |
# File 'lib/tokyo_metro/api/station/info.rb', line 79 def railway_line @railway_line end |
#region ⇒ String (readonly) Also known as: geo_json
ここでug:regionが指し示すURLは、路線形状データを GeoJSON で取得するためのURLとなる。
GeoJSON 取得には、ug:regionに記載されているURLに加えて、アクセストークンの付与が必要である。
取得される GeoJSON は、駅構内に入線する路線の中央点を取ったPOINTとなる
駅代表点のデータを GeoJSON で取得するためのURL <ug:region - odpt:GeoDocument>
65 66 67 |
# File 'lib/tokyo_metro/api/station/info.rb', line 65 def region @region end |
#same_as ⇒ String (readonly)
API での命名ルールは「odpt.Station:TokyoMetro.路線名.駅名」
固有識別子 - URL
42 43 44 |
# File 'lib/tokyo_metro/api/station/info.rb', line 42 def same_as @same_as end |
#station_code ⇒ String (readonly)
駅コード - odpt:stationCode
95 96 97 |
# File 'lib/tokyo_metro/api/station/info.rb', line 95 def station_code @station_code end |
#title ⇒ String (readonly) Also known as: station
駅名 - dc:title
71 72 73 |
# File 'lib/tokyo_metro/api/station/info.rb', line 71 def title @title end |
Instance Method Details
#basename ⇒ Object
145 146 147 |
# File 'lib/tokyo_metro/api/station/info.rb', line 145 def basename @same_as.gsub( /\Aodpt\.Station\:TokyoMetro\.[[:alpha:]]+\.([[:alpha:]]+)\Z/ ) { $1 } end |
#basename_to_display ⇒ Object
149 150 151 |
# File 'lib/tokyo_metro/api/station/info.rb', line 149 def basename_to_display self.basename.gsub( /(?<=[a-z])([A-Z])/ ) { "-#{$1.downcase}" } end |
#seed_connecting_railway_lines(indent) ⇒ Object
164 165 166 |
# File 'lib/tokyo_metro/api/station/info.rb', line 164 def seed_connecting_railway_lines( indent ) @connecting_railway_lines.try( :seed , station_info_id , indent ) end |
#seed_exits(indent) ⇒ Object
168 169 170 |
# File 'lib/tokyo_metro/api/station/info.rb', line 168 def seed_exits( indent ) @exit_list.try( :seed , station_info_id , indent ) end |
#seed_link_to_passenger_surveys(indent) ⇒ Object
172 173 174 |
# File 'lib/tokyo_metro/api/station/info.rb', line 172 def seed_link_to_passenger_surveys( indent ) @passenger_survey.try( :seed , station_info_id , indent ) end |
#title_shift_jis ⇒ Object Also known as: name_ja
153 154 155 156 157 158 159 160 |
# File 'lib/tokyo_metro/api/station/info.rb', line 153 def title_shift_jis case @title when "麴町" "麹町" else @title end end |
#to_h ⇒ Hash
インスタンスの情報をハッシュにして返すメソッド
120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 |
# File 'lib/tokyo_metro/api/station/info.rb', line 120 def to_h h = Hash.new set_data_to_hash( h , "\@id" , @id_urn ) set_data_to_hash( h , "owl:sameAs" , @same_as ) set_data_to_hash( h , "dc:date" , @dc_date.to_s ) set_data_to_hash( h , "ug:region" , @region ) set_data_to_hash( h , "odpt:operator" , @operator ) set_data_to_hash( h , "odpt:railway" , @railway_line ) set_data_to_hash( h , "odpt:stationCode" , @station_code ) set_data_to_hash( h , "dc:title" , @title ) set_data_to_hash( h , "geo:long" , @geo_long ) set_data_to_hash( h , "geo:lat" , @geo_lat ) set_data_to_hash( h , "odpt:connectingRailway" , @connecting_railway_lines ) set_data_to_hash( h , "odpt:facility" , @facility ) set_data_to_hash( h , "odpt:passengerSurvey" , @passenger_survey ) set_data_to_hash( h , "odpt:exit" , @exit_list ) h end |
#to_s(indent = 0) ⇒ String Also known as: to_strf
インスタンスの情報を文字列にして返すメソッド
112 113 114 |
# File 'lib/tokyo_metro/api/station/info.rb', line 112 def to_s( indent = 0 ) to_s_with_array( [ "odpt:connectingRailway" , "odpt:passengerSurvey" , "odpt:exit" ] , indent ) end |