class FseventsToVm::RecursionFilter
Attributes
recent_events[R]
Public Class Methods
new()
click to toggle source
# File lib/fsevents_to_vm/recursion_filter.rb, line 5 def initialize @recent_events = {} end
Public Instance Methods
ignore?(event)
click to toggle source
# File lib/fsevents_to_vm/recursion_filter.rb, line 9 def ignore?(event) purge_old_events! existing_event = @recent_events[event.path] if existing_event && existing_event.mtime == event.mtime true else @recent_events[event.path] = event false end end
Private Instance Methods
purge_old_events!()
click to toggle source
# File lib/fsevents_to_vm/recursion_filter.rb, line 22 def purge_old_events! cutoff = Time.now - 30 @recent_events.reject! { |path, event| event.event_time < cutoff } end