Class: TokyoMetro::Factory::BeforeDecorate::Api::TrainLocation::Info

Inherits:
Object
  • Object
show all
Defined in:
lib/tokyo_metro/factory/before_decorate/api/train_location/info.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(object) ⇒ Info

Returns a new instance of Info.



3
4
5
# File 'lib/tokyo_metro/factory/before_decorate/api/train_location/info.rb', line 3

def initialize( object )
  @object = object
end

Instance Attribute Details

#objectObject (readonly)

Returns the value of attribute object.



7
8
9
# File 'lib/tokyo_metro/factory/before_decorate/api/train_location/info.rb', line 7

def object
  @object
end

Instance Method Details

#railway_direction(railway_line_in_db) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
# File 'lib/tokyo_metro/factory/before_decorate/api/train_location/info.rb', line 13

def railway_direction( railway_line_in_db )
  rd = railway_direction_in_api_same_as
  # 都営三田線(目黒 - 白金高輪)の列車
  if railway_line_in_db.namboku_line? and object.toei_mita_line?
    case rd
    when "odpt.RailDirection:Toei.NishiTakashimadaira"
      return "odpt.RailDirection:TokyoMetro.AkabaneIwabuchi"
    when "odpt.RailDirection:Toei.Meguro"
      return "odpt.RailDirection:TokyoMetro.Meguro"
    end
  end

  # 有楽町・副都心線
  if railway_line_in_db.yurakucho_or_fukutoshin_line?

    # 西武線直通列車
    if object.terminating_on_seibu_line?
      case rd
      when "odpt.RailDirection:TokyoMetro.KotakeMukaihara"
        return "odpt.RailDirection:TokyoMetro.Wakoshi"
      end
    end

    # 池袋行き(新木場・渋谷方面から)
    if object.terminating_at_ikebukuro_on_yurakucho_line? or object.terminating_at_ikebukuro_on_fukutoshin_line?
      if object.starting_at_toyosu? or object.starting_at_shin_kiba? or object.starting_at_shibuya_on_fukutoshin_line? or object.starting_on_tokyu_toyoko_or_minatomirai_line?
        return "odpt.RailDirection:TokyoMetro.Wakoshi"
      end
    end

    # 小竹向原行き(新木場・渋谷方面から)
    if object.terminating_at_kotake_mukaihara_on_yurakucho_line? or object.terminating_at_kotake_mukaihara_on_fukutoshin_line?
      if object.starting_at_toyosu? or object.starting_at_shin_kiba? or object.starting_at_shibuya_on_fukutoshin_line? or object.starting_on_tokyu_toyoko_or_minatomirai_line?
        return "odpt.RailDirection:TokyoMetro.Wakoshi"
      end
    end

  end

  # 有楽町線
  if railway_line_in_db.yurakucho_line?

    # 池袋行き(和光市・東武線・西武線方面から)
    if object.terminating_at_ikebukuro_on_yurakucho_line?
      if object.starting_at_wakoshi_on_yurakucho_line? or object.starting_at_kotake_mukaihara_on_yurakucho_line? or object.starting_on_seibu_line? or object.starting_on_tobu_tojo_line?
        return "odpt.RailDirection:TokyoMetro.ShinKiba"
      end
    end

  end

  # 副都心線
  if railway_line_in_db.fukutoshin_line?

    # 新宿三丁目行き(渋谷方面から)
    if object.terminating_at_shinjuku_sanchome_on_fukutoshin_line?
      if object.starting_at_shibuya_on_fukutoshin_line? or object.starting_on_tokyu_toyoko_or_minatomirai_line?
        case rd
        when "odpt.RailDirection:TokyoMetro.Ikebukuro"
          return "odpt.RailDirection:TokyoMetro.Wakoshi"
        end
      end
    end

    # 池袋行き(和光市・東武線・西武線方面から)
    if object.terminating_at_ikebukuro_on_fukutoshin_line?
      if object.starting_at_wakoshi_on_fukutoshin_line? or object.starting_at_kotake_mukaihara_on_fukutoshin_line? or object.starting_on_seibu_line? or object.starting_on_tobu_tojo_line?
        return "odpt.RailDirection:TokyoMetro.Shibuya"
      end
    end

  end

  return rd
end

#railway_direction_in_api_same_asObject



9
10
11
# File 'lib/tokyo_metro/factory/before_decorate/api/train_location/info.rb', line 9

def railway_direction_in_api_same_as
  object.railway_direction
end