class TokyoMetro::Factory::Convert::Customize::Api::Fare::ChiyodaBranchLine::Ayase::Generate::List::EachCondition

Constants

REGEXP

Public Class Methods

new( obj , condition ) click to toggle source
# File lib/tokyo_metro/factory/convert/customize/api/fare/chiyoda_branch_line/ayase/generate/list/each_condition.rb, line 5
def initialize( obj , condition )
  @obj = obj
  @condition = condition
end
process( obj , condition ) click to toggle source
# File lib/tokyo_metro/factory/convert/customize/api/fare/chiyoda_branch_line/ayase/generate/list/each_condition.rb, line 16
def self.process( obj , condition )
  self.new( obj , condition ).process
end

Public Instance Methods

process() click to toggle source
# File lib/tokyo_metro/factory/convert/customize/api/fare/chiyoda_branch_line/ayase/generate/list/each_condition.rb, line 10
def process
  h = hash_for_variables
  variables = ::TokyoMetro::Api::Fare::Info.attr_names.map { | variable_name | h[ variable_name ] }
  ::TokyoMetro::Api::Fare::Info.new( *variables )
end

Private Instance Methods

hash_for_variables() click to toggle source
# File lib/tokyo_metro/factory/convert/customize/api/fare/chiyoda_branch_line/ayase/generate/list/each_condition.rb, line 22
def hash_for_variables
  h = ::Hash.new

  h[ :same_as ] = @obj.same_as.gsub( REGEXP , "ChiyodaBranch" )

  [ :id_urn , :dc_date , :operator , :normal_fare , :from_station , :to_station ].each do | method_name |
    h[ method_name ] = @obj.send( method_name )
  end

  case @condition
  when :from_station , 'from_station'
    h[ :from_station ] = h[ :from_station ].gsub( REGEXP , "ChiyodaBranch" )
  when :to_station , 'to_station'
    h[ :to_station ] = h[ :to_station ].gsub( REGEXP , "ChiyodaBranch" )
  end

  h
end