Sha256: 3960289961794d05b8b1bb21a65f879d1d4dee9e77f526c8238fe4a51259a154
Contents?: true
Size: 759 Bytes
Versions: 6
Compression:
Stored size: 759 Bytes
Contents
require 'singleton' module Waffle class Event include Singleton class << self # Syntactic sugar ^_^ def occured(*args) self.instance.occured(*args) end alias :occurred :occured end def transport @transport ||= Waffle::Base.new eval("Waffle::Transports::#{Waffle::Config.transport.capitalize}").new end def encoder @encoder ||= eval("Waffle::Encoders::#{Waffle::Config.encoder.capitalize}") end def occured(event_name = 'event', event_data = nil) unless event_data.is_a? Hash event_data = {'body' => event_data.to_s} end event_data.merge!({'occured_at' => Time.now}) transport.publish event_name, encoder.encode(event_data) end end end
Version data entries
6 entries across 6 versions & 1 rubygems