aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2013-04-27 14:57:24 +0100
committerMatthew Wild <mwild1@gmail.com>2013-04-27 14:57:24 +0100
commit288e6e40711a6121f48da90c0eaecbae500a578d (patch)
treefd70b0d3f027ee75d470774a4c42e223d9955666
parent1b3694f2122ef9c3cae29e240f2181e35029fae7 (diff)
downloadprosody-288e6e40711a6121f48da90c0eaecbae500a578d.tar.gz
prosody-288e6e40711a6121f48da90c0eaecbae500a578d.zip
moduleapi: Add module:context(host) to produce a fake API context for a given host (or global). module:context("*"):get_option("foo") to get global options.
-rw-r--r--core/moduleapi.lua4
1 files changed, 4 insertions, 0 deletions
diff --git a/core/moduleapi.lua b/core/moduleapi.lua
index 30360f73..da44db5f 100644
--- a/core/moduleapi.lua
+++ b/core/moduleapi.lua
@@ -270,6 +270,10 @@ function api:get_option_set(name, ...)
return set.new(value);
end
+function api:context(host)
+ return setmetatable({host=host or "*"}, {__index=self,__newindex=self});
+end
+
function api:add_item(key, value)
self.items = self.items or {};
self.items[key] = self.items[key] or {};