class Relax::EventListener
Constants
- DEFAULT_LOG_LEVEL
Public Class Methods
callback()
click to toggle source
# File lib/relax/event_listener.rb, line 36 def self.callback @@callback end
callback=(cb)
click to toggle source
# File lib/relax/event_listener.rb, line 32 def self.callback=(cb) @@callback = cb end
listen!()
click to toggle source
# File lib/relax/event_listener.rb, line 10 def self.listen! if relax_events_queue.nil? || relax_events_queue == "" raise EventsQueueNotSetError, "Environment Variable RELAX_EVENTS_QUEUE is not set" end self.log("Listening for Relax Events...") while true do queue_name, event_json = redis.with { |c| c.blpop(relax_events_queue) } if queue_name == relax_events_queue event = Event.new(JSON.parse(event_json)) callback.call(event) if callback end end end
log(text, level = DEFAULT_LOG_LEVEL)
click to toggle source
# File lib/relax/event_listener.rb, line 27 def self.log(text, level = DEFAULT_LOG_LEVEL) return if logger.nil? logger.send(level, "#{Time.now.strftime('%FT%T%z')}: #{text}") end
logger()
click to toggle source
# File lib/relax/event_listener.rb, line 44 def self.logger @@logger end
logger=(logger)
click to toggle source
# File lib/relax/event_listener.rb, line 40 def self.logger=(logger) @@logger = logger end
relax_events_queue()
click to toggle source
# File lib/relax/event_listener.rb, line 48 def self.relax_events_queue ENV['RELAX_EVENTS_QUEUE'] end