class Deepstream::AckTimeoutRegistry
Public Class Methods
new(client)
click to toggle source
# File lib/deepstream/ack_timeout_registry.rb, line 3 def initialize(client) @client = client @timeouts = {} end
Public Instance Methods
add(name, message)
click to toggle source
# File lib/deepstream/ack_timeout_registry.rb, line 8 def add(name, message) return unless (timeout = @client.options[:ack_timeout]) @timeouts[name] = Thread.new do sleep timeout @client.on_error(message) end end
cancel(name)
click to toggle source
# File lib/deepstream/ack_timeout_registry.rb, line 16 def cancel(name) @timeouts[name].exit rescue nil @timeouts.delete(name) end