module OwskiLog::WatcherManager

Public Class Methods

register_watcher(watcher_collection, watcher) click to toggle source
# File lib/owskilog/watcher.rb, line 14
def self.register_watcher(watcher_collection, watcher)
  raise ArgumentError.new('You can only register OwskiLog::Watcher.') unless watcher.is_a? Watcher

  watcher_collection << watcher
end
trigger_watchers(watcher_collection, triggers: nil) click to toggle source
# File lib/owskilog/watcher.rb, line 20
def self.trigger_watchers(watcher_collection, triggers: nil)
  if triggers
    watcher_collection.select {|w| triggers.include?(w.trigger)}.each {|w| w.lambda.call}
  else
    watcher_collection.each {|w| w.lambda.call}
  end
end