class AdfBuilder::Price

Constants

VALID_PARAMETERS
VALID_VALUES

Public Class Methods

new(parent_node, value, params={}) click to toggle source
# File lib/adf_builder/vehicles/price.rb, line 18
def initialize(parent_node, value, params={})
  @parent_node = parent_node
  params.merge!({valid_values: VALID_VALUES, valid_parameters: VALID_PARAMETERS})
  validate_currency(params)
  AdfBuilder::Builder.update_node(@parent_node, :price, value,  params)
  @price = @parent_node.price
end

Public Instance Methods

update(value, params={}) click to toggle source
# File lib/adf_builder/vehicles/price.rb, line 26
def update(value, params={})
  params.merge!({valid_values: VALID_VALUES, valid_parameters: VALID_PARAMETERS})
  AdfBuilder::Builder.update_node(@parent_node, :price, value,  params)
end
validate_currency(params) click to toggle source
# File lib/adf_builder/vehicles/price.rb, line 31
def validate_currency(params)
  code = params[:currency]
  if code
    json = JSON.parse(File.read('./lib/adf_builder/data/iso-4217-currency-codes.json'))
    codes = json.map{|j| j['Alphabetic_Code']}.reject{|j| j.nil?}
    unless codes.include? code
      params.delete(:currency)
    end
  end
end