class NtaRuby::Response

Constants

HEADER_COLUMN
INTEGER_COLUMN
RAW_RESPONSE_COLUMN
TIME_COLUMN

Public Class Methods

new(column, csv_header) click to toggle source
# File lib/nta_ruby/response.rb, line 74
def initialize(column, csv_header)
  RAW_RESPONSE_COLUMN.each_with_index do |attr, idx|
    target_val = column[idx]
    target_val = target_val.to_i if INTEGER_COLUMN.include?(attr) && target_val
    target_val = Time.parse(target_val) if TIME_COLUMN.include?(attr) && target_val
    send("#{attr}=", target_val)
  end
  HEADER_COLUMN.each_with_index do |attr, idx|
    target_val = csv_header[idx]
    target_val = target_val.to_i if INTEGER_COLUMN.include?(attr) && target_val
    target_val = Time.parse(target_val) if TIME_COLUMN.include?(attr) && target_val
    send("#{attr}=",target_val)
  end
end
parse(raw_resp) click to toggle source
# File lib/nta_ruby/response.rb, line 63
def parse(raw_resp)
  parsed_csv = CSV.parse(raw_resp.body)
  csv_header = parsed_csv.shift

  result = parsed_csv.map { |column| new(column, csv_header) }
  divide_size = csv_header[3].to_i

  [result, divide_size]
end