Class: TokyoMetro::Api::Fare

Overview

Note:

2駅間の運賃を表す。

運賃 odpt:RailwayFare を扱うクラス

Defined Under Namespace

Classes: Info, List

クラスメソッド - データの取得・保存 collapse

テスト collapse

Methods inherited from MetaClass::Fundamental

factory_for_generating_from_saved_file

Class Method Details

.get(http_client, id_urn: nil, same_as: nil, operator: nil, from_station: nil, to_station: nil, ticket: nil, child_ticket: nil, ic_card: nil, child_ic_card: nil, parse_json: false, generate_instance: false, to_inspect: false) ⇒ ::Array

運賃の情報を取得するメソッド

Parameters:

  • http_client (HTTPClient)

    HTTPClient のインスタンス【必須】

  • id_urn (String) (defaults to: nil)

    固有識別子 (ucode) <id - URN>

  • same_as (String) (defaults to: nil)

    固有識別子(命名ルールは、「odpt.RailwayFare:TokyoMetro.出発駅の路線名.出発駅名.TokyoMetro.到着駅の路線名.到着駅名」) <owl:sameAs - URL>

  • operator (String) (defaults to: nil)

    運行会社 <odpt:operator - odpt:Operator>

  • from_station (String) (defaults to: nil)

    駅間の始点駅 <odpt:fromStation - odpt:Station>

  • to_station (String) (defaults to: nil)

    駅間の終点駅 <odpt:toStation - odpt:Station>

  • ticket (Integer) (defaults to: nil)

    切符利用時の運賃 <odpt:ticketFare - xsd:integer>

  • child_ticket (Integer) (defaults to: nil)

    切符利用時の子供運賃 <odpt:childTicketFare - xsd:integer>

  • ic_card (Integer) (defaults to: nil)

    ICカード利用時の運賃 <odpt:icCardFare - xsd:integer>

  • child_ic_card (Integer) (defaults to: nil)

    ICカード利用時の子供運賃 <odpt:childIcCardFare - xsd:integer>

  • parse_json (Boolean) (defaults to: false)

    JSONを配列とするか否かの設定(false の場合は文字列とする)

  • generate_instance (Boolean) (defaults to: false)

    データ取得後に Ruby のインスタンスを作成するか否かの設定

  • to_inspect (Boolean) (defaults to: false)

    データ取得後にコマンドツールに内容を表示するか否かの設定

Returns:

  • (::Array)


26
27
28
29
30
31
32
33
34
35
36
# File 'lib/tokyo_metro/api/fare.rb', line 26

def self.get( http_client ,
  id_urn: nil , same_as: nil , operator: nil ,
  from_station: nil , to_station: nil ,
  ticket: nil , child_ticket: nil , ic_card: nil , child_ic_card: nil ,
  parse_json: false , generate_instance: false , to_inspect: false )

  factory_for_getting.process( http_client , id_urn , same_as , operator ,
    from_station , to_station ,
    ticket , child_ticket , ic_card , child_ic_card ,
    parse_json , generate_instance , to_inspect )
end

.get_test(http_client, from) ⇒ nil

データ取得のテスト

Returns:

  • (nil)


80
81
82
83
84
85
86
87
88
89
90
# File 'lib/tokyo_metro/api/fare.rb', line 80

def self.get_test( http_client , from )
  puts "● Fare (from #{from})"
  data = get( http_client ,
    from_station: from , to_station: nil ,
    # id_urn: nil , same_as: nil , operator: nil ,
    # ticket: "240" ,
    # child_ticket: nil , ic_card: nil , child_ic_card: nil ,
    to_inspect: true , parse_json: true , generate_instance: true )

  puts data.sort_by_fare.to_strf
end

.save(http_client, filename, file_type: :yaml, id_urn: nil, same_as: nil, operator: nil, from_station: nil, to_station: nil, ticket: nil, child_ticket: nil, ic_card: nil, child_ic_card: nil, to_inspect: false) ⇒ nil

運賃の情報を取得し保存するメソッド

Parameters:

  • http_client (HTTPClient)

    HTTPClient のインスタンス【必須】

  • file_type (Symbol) (defaults to: :yaml)

    保存するファイルの種類【必須】

  • id_urn (String) (defaults to: nil)

    固有識別子 (ucode) <id - URN>

  • same_as (String) (defaults to: nil)

    固有識別子(命名ルールは、「odpt.RailwayFare:TokyoMetro.出発駅の路線名.出発駅名.TokyoMetro.到着駅の路線名.到着駅名」) <owl:sameAs - URL>

  • operator (String) (defaults to: nil)

    運行会社 <odpt:operator - odpt:Operator>

  • from_station (String) (defaults to: nil)

    駅間の始点駅 <odpt:fromStation - odpt:Station>

  • to_station (String) (defaults to: nil)

    駅間の終点駅 <odpt:toStation - odpt:Station>

  • ticket (Integer) (defaults to: nil)

    切符利用時の運賃 <odpt:ticketFare - xsd:integer>

  • child_ticket (Integer) (defaults to: nil)

    切符利用時の子供運賃 <odpt:childTicketFare - xsd:integer>

  • ic_card (Integer) (defaults to: nil)

    ICカード利用時の運賃 <odpt:icCardFare - xsd:integer>

  • child_ic_card (Integer) (defaults to: nil)

    ICカード利用時の子供運賃 <odpt:childIcCardFare - xsd:integer>

  • to_inspect (Boolean) (defaults to: false)

    データ取得後にコマンドツールに内容を表示するか否かの設定

Returns:

  • (nil)


52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/tokyo_metro/api/fare.rb', line 52

def self.save( http_client , filename , file_type: :yaml ,
  id_urn: nil , same_as: nil , operator: nil ,
  from_station: nil , to_station: nil ,
  ticket: nil , child_ticket: nil , ic_card: nil , child_ic_card: nil ,
  to_inspect: false )

  data = get( http_client ,
    id_urn: id_urn , same_as: same_as , operator: operator ,
    from_station: from_station , to_station: to_station ,
    ticket: ticket , child_ticket: child_ticket , ic_card: ic_card , child_ic_card: child_ic_card ,
    parse_json: true , generate_instance: false , to_inspect: to_inspect )

  data = eval( data.to_s.gsub( /(?:\r\n|\r)/ ,"\n" ).encode( "UTF-8" ) )

  save_data( data , filename , file_type: file_type )
end