class RakutenApi::Base::Params

Constants

BASE_VALID_NAMES

Attributes

invalid_params_action[RW]

Public Class Methods

new(application_id = nil, affiliate_id = nil, invalid_params_action = nil) click to toggle source

Initialize @param [String] application_id Rakuten Web Service applicationId

If application_id is nil, application_id set to RakutenApi.config.application_id

@param [String] affiliate_id Rakuten Web Service affiliateId

If affiliate_id is nil, affiliate_id set to RakutenApi.config.affiliate_id

@param [Symbol] invalid_params_action :raise or :stdout or :none

If invalid_params_action is nil, invalid_params_action set to RakutenApi.config.invalid_params_action
# File lib/rakuten_api/base/params.rb, line 15
def initialize(application_id = nil, affiliate_id = nil, invalid_params_action = nil)
  init_params application_id || RakutenApi.config.application_id, affiliate_id || RakutenApi.config.affiliate_id
  @invalid_params_action = invalid_params_action || RakutenApi.config.invalid_params_action
end

Public Instance Methods

[](name) click to toggle source
# File lib/rakuten_api/base/params.rb, line 43
def [](name)
  _name = normalize(name)
  @params[_name]
end
[]=(name, value) click to toggle source
# File lib/rakuten_api/base/params.rb, line 48
def []=(name, value)
  add_param(name, value)
end
add_param(name, value) click to toggle source
# File lib/rakuten_api/base/params.rb, line 26
def add_param(name, value)
  _name = normalize(name)
  if valid_name?(_name)
    @params[_name] = value
  else
    if @invalid_params_action == :raise
      raise ::RakutenApi::Error.new('passed invalid param: ' + name.to_s)
    elsif @invalid_params_action == :stdout
      puts "Warning: " + name.to_s + ' is invalid name'
    end
  end
end
init_params(application_id, affiliate_id) click to toggle source
# File lib/rakuten_api/base/params.rb, line 20
def init_params(application_id, affiliate_id)
  @params = {}
  add_param('applicationId', application_id)
  add_param('affiliateId', affiliate_id)
end
inspect() click to toggle source
# File lib/rakuten_api/base/params.rb, line 39
def inspect
  @params
end
normalize(name) click to toggle source
# File lib/rakuten_api/base/params.rb, line 62
def normalize(name)
  name = name.to_s
  name = name.split('_').tap{|names| break names.shift + names.map(&:capitalize).join } if name =~ /.+\_.+/
  name
end
to_hash() click to toggle source
# File lib/rakuten_api/base/params.rb, line 52
def to_hash
  @params ||= {}
  @params.reject!{|k,v| v.nil? }
  @params
end
valid_name?(name) click to toggle source
# File lib/rakuten_api/base/params.rb, line 58
def valid_name?(name)
  valid_names.include? name
end
valid_names() click to toggle source
# File lib/rakuten_api/base/params.rb, line 68
def valid_names
  BASE_VALID_NAMES
end