class Redwood::IdleManager
Constants
- IDLE_THRESHOLD
Public Class Methods
new()
click to toggle source
# File lib/sup/idle.rb, line 10 def initialize @no_activity_since = Time.now @idle = false @thread = nil end
Public Instance Methods
ping()
click to toggle source
# File lib/sup/idle.rb, line 16 def ping if @idle UpdateManager.relay self, :unidle, Time.at(@no_activity_since) @idle = false end @no_activity_since = Time.now end
start()
click to toggle source
# File lib/sup/idle.rb, line 24 def start @thread = Redwood::reporting_thread("checking for idleness") do while true sleep 1 if !@idle and Time.now.to_i - @no_activity_since.to_i >= IDLE_THRESHOLD UpdateManager.relay self, :idle, Time.at(@no_activity_since) @idle = true end end end end
stop()
click to toggle source
# File lib/sup/idle.rb, line 36 def stop @thread.kill if @thread @thread = nil end