Method: Vines::Cluster::PubSub#delete_node

Defined in:
lib/vines/cluster/pubsub.rb

#delete_node(domain, node) ⇒ Object

Remove a pubsub topic so messages may no longer be broadcast to it.



22
23
24
25
26
27
28
29
30
31
32
# File 'lib/vines/cluster/pubsub.rb', line 22

def delete_node(domain, node)
  redis.smembers("pubsub:#{domain}:subscribers_#{node}") do |subscribers|
    redis.multi
    subscribers.each do |jid|
      redis.srem("pubsub:#{domain}:subscriptions_#{jid}", node)
    end
    redis.del("pubsub:#{domain}:subscribers_#{node}")
    redis.srem("pubsub:#{domain}:nodes", node)
    redis.exec
  end
end