25 lines
620 B
Ruby
25 lines
620 B
Ruby
|
class Dispatcher
|
||
|
include Singleton
|
||
|
|
||
|
attr_reader :async_dispatcher, :sync_dispatcher
|
||
|
|
||
|
def self.dispatch(event_name, timestamp, data, async = false)
|
||
|
$dispatcher.dispatch(event_name, timestamp, data, async)
|
||
|
end
|
||
|
|
||
|
def initialize
|
||
|
@sync_dispatcher = SyncDispatcher.new
|
||
|
@async_dispatcher = AsyncDispatcher.new
|
||
|
end
|
||
|
|
||
|
def dispatch(event_name, timestamp, data, async = false)
|
||
|
@sync_dispatcher.dispatch(event_name, timestamp, data)
|
||
|
@async_dispatcher.dispatch(event_name, timestamp, data)
|
||
|
end
|
||
|
|
||
|
def load_listeners
|
||
|
@sync_dispatcher.load_listeners
|
||
|
@async_dispatcher.load_listeners
|
||
|
end
|
||
|
end
|