# HG changeset patch # User Kim Alvefur # Date 1373092537 -7200 # Node ID f7854dd16ed36654a99923667087104fa6090f48 # Parent 266a96ae4c0d981fcd84d1fcf4903f751f32398a plugins.pubsub: Implement node discovery diff -r 266a96ae4c0d -r f7854dd16ed3 plugins/pubsub.lua --- a/plugins/pubsub.lua Sun Jun 30 00:46:49 2013 +0200 +++ b/plugins/pubsub.lua Sat Jul 06 08:35:37 2013 +0200 @@ -116,14 +116,16 @@ end or nil); end --- TODO Listing nodes? It's done with standard disco#items, but should --- we have a wrapper here? If so, it could wrap items in pubsub_node objects - ---[[ function pubsub_service:nodes(callback) - self.stream:disco_items(...) + self.stream:disco_items(self.service, nil, function(items, ...) + if items then + for i=1,#items do + items[i] = self:node(items[i].node); + end + end + callback(items, ...) + end); end ---]] local pubsub_node = {}; local pubsub_node_mt = { __index = pubsub_node };