class Ingenico::Direct::SDK::Logging::Obfuscator

Public Class Methods

new(obfuscators, case_insensitive) click to toggle source
# File lib/ingenico/direct/sdk/logging/logging_util.rb, line 50
def initialize(obfuscators, case_insensitive)
  raise ArgumentError unless obfuscators.is_a? Hash
  @obfuscators = copy(obfuscators, case_insensitive)
end

Public Instance Methods

obfuscate_value(key, value) click to toggle source
# File lib/ingenico/direct/sdk/logging/logging_util.rb, line 87
def obfuscate_value(key, value)
  obfuscator = @obfuscators[key]
  if obfuscator.nil?
      value
  else
    obfuscator.obfuscate_value(value)
  end
end

Private Instance Methods

copy(obfuscators, case_insensitive) click to toggle source
# File lib/ingenico/direct/sdk/logging/logging_util.rb, line 80
def copy(obfuscators, case_insensitive)
  cp = case_insensitive ? HashClod.new(obfuscators) : obfuscators
  Marshal.load(Marshal.dump(cp)) # deep copy
end