class TokyoMetro::Factory::Decorate::Api::TrainLocation::List::EachDirection

Attributes

railway_direction[R]

Public Class Methods

new( request , railway_line , railway_direction_in_api_same_as , train_location_infos ) click to toggle source
Calls superclass method
# File lib/tokyo_metro/factory/decorate/api/train_location/list/each_direction.rb, line 3
def initialize( request , railway_line , railway_direction_in_api_same_as , train_location_infos )
  super( request )
  @railway_line = railway_line
  @railway_direction = ::RailwayDirection.find_by( railway_line: @railway_line , in_api_same_as: railway_direction_in_api_same_as )
  unless @railway_direction.present?
    raise "\[Error\] railway_line: #{ @railway_line.same_as } / railway_direction: #{ railway_direction_in_api_same_as }"
  end
  @train_location_infos = train_location_infos
end

Public Instance Methods

render() click to toggle source
# File lib/tokyo_metro/factory/decorate/api/train_location/list/each_direction.rb, line 15
  def render
    h.render inline: <<-HAML , type: :haml , locals: h_locals
= railway_direction.decorate.render_title_in_train_location
%ul{ class: [ :train_locations_of_each_direction , :clearfix ] }
  - train_location_infos.each do | train_location |
    = train_location.decorate( request , railway_line ).render
    HAML
  end

Private Instance Methods

h_locals() click to toggle source
Calls superclass method
# File lib/tokyo_metro/factory/decorate/api/train_location/list/each_direction.rb, line 26
def h_locals
  super.merge({
    railway_line: @railway_line ,
    railway_direction: @railway_direction ,
    train_location_infos: @train_location_infos
  })
end