class ActsAsScrubbable::ArClassProcessor
Attributes
ar_class[R]
query_processor[R]
Public Class Methods
new(ar_class)
click to toggle source
# File lib/acts_as_scrubbable/ar_class_processor.rb, line 10 def initialize(ar_class) @ar_class = ar_class if ActsAsScrubbable.use_upsert ActsAsScrubbable.logger.info Term::ANSIColor.white("Using Upsert") @query_processor = ImportProcessor.new(ar_class) else ActsAsScrubbable.logger.info Term::ANSIColor.white("Using Update") @query_processor = UpdateProcessor.new(ar_class) end end
Public Instance Methods
process(num_of_batches)
click to toggle source
# File lib/acts_as_scrubbable/ar_class_processor.rb, line 22 def process(num_of_batches) ActsAsScrubbable.logger.info Term::ANSIColor.green("Scrubbing #{ar_class} ...") num_of_batches = Integer(ENV.fetch("SCRUB_BATCHES", "256")) if num_of_batches.nil? scrubbed_count = ActsAsScrubbable::ParallelTableScrubber.new(ar_class, num_of_batches).each_query do |query| query_processor.scrub_query(query) end ActsAsScrubbable.logger.info Term::ANSIColor.blue("#{scrubbed_count} #{ar_class} objects scrubbed") ActiveRecord::Base.connection.verify! if ActiveRecord::Base.connection.respond_to?(:reconnect) ActsAsScrubbable.logger.info Term::ANSIColor.white("Scrub Complete!") end