class DataAnon::Strategy::Blacklist

Public Instance Methods

process_record(index, record) click to toggle source
# File lib/strategy/blacklist.rb, line 5
def process_record index, record
  updates = {}
  @fields.each do |field, strategy|
    database_field_name = record.attributes.select { |k,v| k == field }.keys[0]
    field_value = record.attributes[database_field_name]
    unless field_value.nil? || is_primary_key?(database_field_name)
      field = DataAnon::Core::Field.new(database_field_name, field_value, index, record, @name)
      updates[database_field_name] = strategy.anonymize(field)
    end
  end
  record.update_columns(updates) if updates.any?
end