class Ekispert::Information

Attributes

corporation_list[RW]
exit_list[RW]
line_list[RW]
type_list[RW]
welfare_facilities_list[RW]

Public Class Methods

get(params={}) click to toggle source
# File lib/ekispert/information.rb, line 46
def self.get(params={})
  to_information(Ekispert::Client.get('station/info', params))
end
new(element) click to toggle source
Calls superclass method Ekispert::EkispertBase::new
# File lib/ekispert/information.rb, line 5
def initialize(element)
  @line_list = []
  @corporation_list = []
  @welfare_facilities_list = []
  @exit_list = []
  @type_list = []
  super(element)
  relate_line_and_corporation
end

Private Class Methods

to_information(elem_arr) click to toggle source
# File lib/ekispert/information.rb, line 50
def self.to_information(elem_arr)
  elem_arr.xpath('//Information').map { |elem| self.new(elem) if elem.children.size > 1 }.compact
end

Public Instance Methods

exit?() click to toggle source
# File lib/ekispert/information.rb, line 42
def exit?
  type == 'exit'
end
nearrail?() click to toggle source
# File lib/ekispert/information.rb, line 34
def nearrail?
  type == 'nearrail'
end
rail?() click to toggle source
# File lib/ekispert/information.rb, line 30
def rail?
  type == 'rail'
end
relate_line_and_corporation() click to toggle source
# File lib/ekispert/information.rb, line 15
def relate_line_and_corporation
  # Set Information::Line#corporation
  @line_list.each do |line|
    line.corporation = @corporation_list.find { |corp| corp.index == line.corporation_index }
  end
  # Set Information::Corporation#line_list
  @corporation_list.each do |corp|
    corp.line_list = @line_list.select { |line| corp.index == line.corporation_index }
  end
end
type() click to toggle source
# File lib/ekispert/information.rb, line 26
def type
  @type_list[0].text
end
welfare?() click to toggle source
# File lib/ekispert/information.rb, line 38
def welfare?
  type == 'welfare'
end