Class: MagicBus::Publisher

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

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.conectionObject

Returns the value of attribute conection.



14
15
16
# File 'lib/magicbus.rb', line 14

def conection
  @conection
end

Class Method Details

.broadcast(group, action, model, data = nil) ⇒ Object



26
27
28
29
30
31
32
# File 'lib/magicbus.rb', line 26

def self.broadcast(group, action, model, data = nil)

  MagicBus::Subscriber.connected_users(group).each do |user_id|
    self.send_to(user_id, action, model, data)
  end

end

.scatter(group, action, model, &block) ⇒ Object



17
18
19
20
21
22
23
24
# File 'lib/magicbus.rb', line 17

def self.scatter(group, action, model, &block)

  MagicBus::Subscriber.connected_users(group).each do |user_id|
    user = User.find(user_id)
    self.send_to(user_id, action, model, block.call(user))
  end

end

.send_to(user_id, action, model, data) ⇒ Object



34
35
36
37
38
39
40
# File 'lib/magicbus.rb', line 34

def self.send_to(user_id, action, model, data)

  data = { action: action, model: model, data: data }

  self.publish(user_id, data)

end