Class: Arbiter

Inherits:
Object
  • Object
show all
Defined in:
lib/arbiter.rb

Direct Known Subclasses

ResqueArbiter

Class Method Summary collapse

Class Method Details

.perform(message, metadata) ⇒ Object



2
3
4
5
6
7
8
9
# File 'lib/arbiter.rb', line 2

def self.perform(message, )
  message = message.to_sym
  if @message_table[message] and ! @message_table[message].empty?
    @message_table[message].each do |listener|
      listener.notify(message, )
    end
  end
end

.publish(message, metadata) ⇒ Object



21
22
23
# File 'lib/arbiter.rb', line 21

def self.publish(message, )
  self.perform(message, )
end

.set_listeners(listeners) ⇒ Object



11
12
13
14
15
16
17
18
19
# File 'lib/arbiter.rb', line 11

def self.set_listeners(listeners)
  @message_table = {}
  listeners.each do |listener|
    listener.subscribe_to.each do |channel|
      @message_table[channel] ||= []
      @message_table[channel] << listener
    end
  end
end