Software /
code /
prosody
Comparison
core/moduleapi.lua @ 7982:e30b0cbed472
Merge 0.10->trunk
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Thu, 16 Mar 2017 23:49:27 +0100 |
parent | 7950:f91e7ec9654e |
parent | 7975:c64ddee9d671 |
child | 8487:91f6815de26a |
comparison
equal
deleted
inserted
replaced
7974:547f000941cf | 7982:e30b0cbed472 |
---|---|
212 value = default_value; | 212 value = default_value; |
213 end | 213 end |
214 return value; | 214 return value; |
215 end | 215 end |
216 | 216 |
217 function api:get_option_string(name, default_value) | 217 function api:get_option_scalar(name, default_value) |
218 local value = self:get_option(name, default_value); | 218 local value = self:get_option(name, default_value); |
219 if type(value) == "table" then | 219 if type(value) == "table" then |
220 if #value > 1 then | 220 if #value > 1 then |
221 self:log("error", "Config option '%s' does not take a list, using just the first item", name); | 221 self:log("error", "Config option '%s' does not take a list, using just the first item", name); |
222 end | 222 end |
223 value = value[1]; | 223 value = value[1]; |
224 end | 224 end |
225 return value; | |
226 end | |
227 | |
228 function api:get_option_string(name, default_value) | |
229 local value = self:get_option_scalar(name, default_value); | |
225 if value == nil then | 230 if value == nil then |
226 return nil; | 231 return nil; |
227 end | 232 end |
228 return tostring(value); | 233 return tostring(value); |
229 end | 234 end |
230 | 235 |
231 function api:get_option_number(name, ...) | 236 function api:get_option_number(name, ...) |
232 local value = self:get_option(name, ...); | 237 local value = self:get_option_scalar(name, ...); |
233 if type(value) == "table" then | |
234 if #value > 1 then | |
235 self:log("error", "Config option '%s' does not take a list, using just the first item", name); | |
236 end | |
237 value = value[1]; | |
238 end | |
239 local ret = tonumber(value); | 238 local ret = tonumber(value); |
240 if value ~= nil and ret == nil then | 239 if value ~= nil and ret == nil then |
241 self:log("error", "Config option '%s' not understood, expecting a number", name); | 240 self:log("error", "Config option '%s' not understood, expecting a number", name); |
242 end | 241 end |
243 return ret; | 242 return ret; |
244 end | 243 end |
245 | 244 |
246 function api:get_option_boolean(name, ...) | 245 function api:get_option_boolean(name, ...) |
247 local value = self:get_option(name, ...); | 246 local value = self:get_option_scalar(name, ...); |
248 if type(value) == "table" then | |
249 if #value > 1 then | |
250 self:log("error", "Config option '%s' does not take a list, using just the first item", name); | |
251 end | |
252 value = value[1]; | |
253 end | |
254 if value == nil then | 247 if value == nil then |
255 return nil; | 248 return nil; |
256 end | 249 end |
257 local ret = value == true or value == "true" or value == 1 or nil; | 250 local ret = value == true or value == "true" or value == 1 or nil; |
258 if ret == nil then | 251 if ret == nil then |