Module: CurrencyCloud::ErrorUtils

Included in:
ApiError, UnexpectedError
Defined in:
lib/currency_cloud/errors/error_utils.rb

Constant Summary collapse

REDACTED_PARAMS =
[:api_key, :login_id, :token].freeze
REDACTED_STRING =
'REDACTED'.freeze

Instance Method Summary collapse

Instance Method Details

#platformObject



3
4
5
6
7
8
9
10
11
12
# File 'lib/currency_cloud/errors/error_utils.rb', line 3

def platform
  base = "ruby-#{RUBY_VERSION}"
  implementation = case RUBY_ENGINE
                   when 'ruby' then ''
                   when 'jruby' then " (jruby-#{JRUBY_VERSION})"
                   when 'rbx' then " (rbx-#{Rubinius::VERSION})"
                   else " (#{RUBY_ENGINE})"
                   end
  "#{base}#{implementation}"
end

#redacted_params(params) ⇒ Object



17
18
19
20
21
22
23
24
25
26
# File 'lib/currency_cloud/errors/error_utils.rb', line 17

def redacted_params(params)
  redacted = params.dup

  REDACTED_PARAMS.each do |param|
    redacted[param.to_sym] = REDACTED_STRING if redacted.key? param.to_sym
    redacted[param.to_s] = REDACTED_STRING if redacted.key? param.to_s
  end

  redacted
end