Class: FileScanner::Worker
- Inherits:
-
Object
- Object
- FileScanner::Worker
- Defined in:
- lib/file_scanner/worker.rb
Instance Attribute Summary collapse
-
#filters ⇒ Object
readonly
Returns the value of attribute filters.
-
#policies ⇒ Object
readonly
Returns the value of attribute policies.
Class Method Summary collapse
Instance Method Summary collapse
- #call ⇒ Object
-
#initialize(loader:, filters: Filters::defaults, policies: [], logger: self.class.default_logger, slice: nil) ⇒ Worker
constructor
A new instance of Worker.
Constructor Details
#initialize(loader:, filters: Filters::defaults, policies: [], logger: self.class.default_logger, slice: nil) ⇒ Worker
Returns a new instance of Worker.
13 14 15 16 17 18 19 20 21 |
# File 'lib/file_scanner/worker.rb', line 13 def initialize(loader:, filters: Filters::defaults, policies: [], logger: self.class.default_logger, slice: nil) @loader = loader @filters = filters @policies = policies @slice = slice.to_i @logger = logger end |
Instance Attribute Details
#filters ⇒ Object (readonly)
Returns the value of attribute filters.
5 6 7 |
# File 'lib/file_scanner/worker.rb', line 5 def filters @filters end |
#policies ⇒ Object (readonly)
Returns the value of attribute policies.
5 6 7 |
# File 'lib/file_scanner/worker.rb', line 5 def policies @policies end |
Class Method Details
.default_logger ⇒ Object
7 8 9 10 11 |
# File 'lib/file_scanner/worker.rb', line 7 def self.default_logger Logger.new(nil).tap do |logger| logger.level = Logger::ERROR end end |
Instance Method Details
#call ⇒ Object
23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/file_scanner/worker.rb', line 23 def call slices.each do |slice| yield(slice) if block_given? && policies.empty? policies.each do |policy| @logger.info { "applying \e[33m#{policy}\e[0m to #{slice.size} files" } policy.call(slice) end end rescue StandardError => e @logger.error { e. } raise e end |