Module: Pseudonymize

Defined in:
lib/pseudonymize.rb,
lib/pseudonymize/ip.rb,
lib/pseudonymize/name.rb,
lib/pseudonymize/email.rb,
lib/pseudonymize/telephone.rb

Defined Under Namespace

Classes: Email, Ip, Name, Telephone

Constant Summary collapse

DEFAULT_OPTIONS =
{
  censor: ''
}

Class Method Summary collapse

Class Method Details

.pseudonymize(data, type:, **options) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/pseudonymize.rb', line 13

def self.pseudonymize(data, type:, **options)
  options = DEFAULT_OPTIONS.merge(options)
  return data if (data.nil? || data.empty?)
  
  case type
  when :email
    Email.new(data, **options).result
  when :name
    Name.new(data, **options).result
  when :telephone
    Telephone.new(data, **options).result
  when :ip
    Ip.new(data, **options).result
  end
end