util/pubsub.lua
changeset 4365 6704b3cd032e
parent 4364 af40cf682eba
child 4366 b6c18cadd3ec
--- a/util/pubsub.lua	Mon Aug 29 15:42:15 2011 -0400
+++ b/util/pubsub.lua	Tue Aug 30 15:03:27 2011 -0400
@@ -1,3 +1,5 @@
+local events = require "util.events";
+
 module("pubsub", package.seeall);
 
 local service = {};
@@ -16,6 +18,7 @@
 		affiliations = {};
 		subscriptions = {};
 		nodes = {};
+		events = events.new();
 	}, service_mt);
 end
 
@@ -123,6 +126,7 @@
 	else
 		self.subscriptions[normal_jid] = { [jid] = { [node] = true } };
 	end
+	self.events.fire_event("subscription-added", { node = node, jid = jid, normalized_jid = normal_jid, options = options });
 	return true;
 end
 
@@ -163,6 +167,7 @@
 			self.subscriptions[normal_jid] = nil;
 		end
 	end
+	self.events.fire_event("subscription-removed", { node = node, jid = jid, normalized_jid = normal_jid });
 	return true;
 end