class DataAnon::Strategy::MongoDB::Whitelist

Public Class Methods

whitelist?() click to toggle source
# File lib/strategy/mongodb/whitelist.rb, line 12
def self.whitelist?
  true
end

Public Instance Methods

anonymize_document(document, index, field_strategies = {}) click to toggle source
# File lib/strategy/mongodb/whitelist.rb, line 45
def anonymize_document document, index, field_strategies = {}
  anonymized_document = {}
  document.each do |field_name, field_value|
    field_strategy = field_strategies[field_name] if field_strategies.kind_of?(Hash)
    unless field_value.nil?
      field = DataAnon::Core::Field.new(field_name, field_value, index, document, @name)
      anonymized_document[field.name] = AnonymizeField.new(field, field_strategy, self).anonymize
    end
  end
  anonymized_document
end
collection(field, &block) click to toggle source
# File lib/strategy/mongodb/whitelist.rb, line 16
def collection field, &block
  whitelist = self.class.new @source_database, @destination_database, @name, @user_strategies
  whitelist.process_fields &block
  @fields[field] = whitelist.fields
end
Also aliased as: document
dest_collection() click to toggle source
# File lib/strategy/mongodb/whitelist.rb, line 29
def dest_collection
  database = @destination_database
  @dest_collection ||= mongo_collection(database)
end
Also aliased as: dest_table
dest_table()
Alias for: dest_collection
document(field, &block)
Alias for: collection
mongo_collection(database) click to toggle source
# File lib/strategy/mongodb/whitelist.rb, line 24
def mongo_collection(database)
  options = database[:options] || {}
  Mongo::Client.new(database[:mongodb_uri], options).database.collection(@name)
end
process_record(index, document) click to toggle source
# File lib/strategy/mongodb/whitelist.rb, line 41
def process_record index, document
  dest_collection.insert_one anonymize_document(document, index, @fields)
end
source_collection() click to toggle source
# File lib/strategy/mongodb/whitelist.rb, line 34
def source_collection
  @source_collection ||= mongo_collection(@source_database)
end
Also aliased as: source_table
source_table()
Alias for: source_collection