Diff

mod_admin_web/admin_web/mod_admin_web.lua @ 761:48f8b312a509

mod_admin_web: Replace core_post_stanza() with module:send()
author Florian Zeitz <florob@babelmonkeys.de>
date Wed, 01 Aug 2012 02:33:43 +0200
parent 753:9d5731af2c27
child 769:7076f58b9f48
line wrap: on
line diff
--- a/mod_admin_web/admin_web/mod_admin_web.lua	Wed Aug 01 02:30:30 2012 +0200
+++ b/mod_admin_web/admin_web/mod_admin_web.lua	Wed Aug 01 02:33:43 2012 +0200
@@ -144,10 +144,25 @@
 		}
 	});
 
+	local function simple_broadcast(node, jids, item)
+		item = st.clone(item);
+		item.attr.xmlns = nil; -- Clear the pubsub namespace
+		local message = st.message({ from = module.host, type = "headline" })
+			:tag("event", { xmlns = xmlns_adminsub .. "#event" })
+				:tag("items", { node = node })
+					:add_child(item);
+		for jid in pairs(jids) do
+			module:log("debug", "Sending notification to %s", jid);
+			message.attr.to = jid;
+			module:send(message);
+		end
+	end
+
+
 	-- Setup adminsub service
 	local ok, err;
 	service[module.host] = pubsub.new({
-		broadcaster = function(node, jids, item) return simple_broadcast(node, jids, item, module.host) end;
+		broadcaster = simple_broadcast;
 		normalize_jid = jid_bare;
 		get_affiliation = function(jid) return get_affiliation(jid, module.host) end;
 		capabilities = {
@@ -321,20 +336,6 @@
 	end);
 end
 
-function simple_broadcast(node, jids, item, host)
-	item = st.clone(item);
-	item.attr.xmlns = nil; -- Clear the pubsub namespace
-	local message = st.message({ from = host, type = "headline" })
-		:tag("event", { xmlns = xmlns_adminsub .. "#event" })
-			:tag("items", { node = node })
-				:add_child(item);
-	for jid in pairs(jids) do
-		module:log("debug", "Sending notification to %s", jid);
-		message.attr.to = jid;
-		core_post_stanza(hosts[host], message);
-	end
-end
-
 function get_affiliation(jid, host)
 	local bare_jid = jid_bare(jid);
 	if is_admin(bare_jid, host) then