class CoinMarketPro::Endpoint::Base
Attributes
client[R]
logger[R]
Public Class Methods
new(client:, logger:)
click to toggle source
# File lib/coin_market_pro/endpoint/base.rb, line 8 def initialize(client:, logger:) @client = client @logger = logger end
Protected Instance Methods
valid_params?(args)
click to toggle source
@param args [Hash] @return [Boolean] @raise [ArgumentError]
# File lib/coin_market_pro/endpoint/base.rb, line 18 def valid_params?(args) raise ArgumentError.new('At least one "id" or "symbol" is required.') if args[:id].blank? && args[:symbol].blank? true end
Private Instance Methods
convert_params(**params)
click to toggle source
Convert/Standardize base params @param params [Hash] @return [Hash]
# File lib/coin_market_pro/endpoint/base.rb, line 29 def convert_params(**params) return {} if params.blank? params.each { |k, v| params[k] = standardize_value(v) } params end
standardize_value(param)
click to toggle source
Standardize request params
# File lib/coin_market_pro/endpoint/base.rb, line 37 def standardize_value(param) if param.is_a?(Array) param.join(',') elsif param.is_a?(String) param.strip else param end end