Improves use of classes for user script templates

This commit is contained in:
Simone Mainardi 2021-02-19 14:44:44 +01:00
parent 1dd93e7845
commit 33d035b96c
8 changed files with 24 additions and 25 deletions

View file

@ -33,7 +33,7 @@ end
-- #######################################################
function elephant_flows:parseConfig(script, conf)
function elephant_flows:parseConfig(conf)
if(tonumber(conf.l2r_bytes_value) == nil) then
return false, "bad l2r_bytes_value value"
end
@ -42,12 +42,12 @@ function elephant_flows:parseConfig(script, conf)
return false, "bad r2l_bytes_value value"
end
return http_lint.validateListItems(script, conf)
return http_lint.validateListItems(self._user_script, conf)
end
-- #######################################################
function elephant_flows:describeConfig(script, hooks_conf)
function elephant_flows:describeConfig(hooks_conf)
if not hooks_conf.all then
return '' -- disabled, nothing to show
end

View file

@ -31,13 +31,13 @@ function items_list:init(user_script)
self.super:init(user_script)
end
function items_list:parseConfig(script, conf)
return http_lint.validateListItems(script, conf)
function items_list:parseConfig(conf)
return http_lint.validateListItems(self._user_script, conf)
end
-- #######################################################
function items_list:describeConfig(script, hooks_conf)
function items_list:describeConfig(hooks_conf)
if((not hooks_conf.all) or (not hooks_conf.all.script_conf)) then
return '' -- disabled, nothing to show
end

View file

@ -33,17 +33,17 @@ end
-- #######################################################
function long_lived:parseConfig(script, conf)
function long_lived:parseConfig(conf)
if(tonumber(conf.min_duration) == nil) then
return false, "bad min_duration value"
end
return http_lint.validateListItems(script, conf)
return http_lint.validateListItems(self._user_script, conf)
end
-- #######################################################
function long_lived:describeConfig(script, hooks_conf)
function long_lived:describeConfig(hooks_conf)
if not hooks_conf.all then
return '' -- disabled, nothing to show
end

View file

@ -33,14 +33,13 @@ end
-- #######################################################
function multi_select:parseConfig(script, conf)
return http_lint.validateListItems(script, conf)
function multi_select:parseConfig(conf)
return http_lint.validateListItems(self._user_script, conf)
end
-- #######################################################
function multi_select:describeConfig(script, hooks_conf)
function multi_select:describeConfig(hooks_conf)
if (not hooks_conf.all) then
return '' -- disabled, nothing to show
end
@ -51,7 +50,7 @@ function multi_select:describeConfig(script, hooks_conf)
if not table.empty(conf.items) then
local temp_msg = {}
local groups = script.gui.groups
local groups = self._user_script.gui.groups
-- build a string containing selected elements separated by comma
for _, group in ipairs(groups) do

View file

@ -34,7 +34,7 @@ end
-- #######################################################
function threshold_cross:parseConfig(script, conf)
function threshold_cross:parseConfig(conf)
if(not http_lint.validateOperator(conf.operator)) then
return false, "bad operator"
end
@ -48,7 +48,7 @@ end
-- #######################################################
function threshold_cross:describeConfig(script, hooks_conf)
function threshold_cross:describeConfig(hooks_conf)
local alert_consts = require("alert_consts")
local granularities_order = {"min", "5mins", "hour", "day"}
local items = {}
@ -62,14 +62,14 @@ function threshold_cross:describeConfig(script, hooks_conf)
local unit = ""
local op = ternary(hook.script_conf.operator == "gt", ">", "<")
if(script.gui and script.gui.i18n_field_unit) then
unit = " " .. i18n(script.gui.i18n_field_unit)
if(self._user_script.gui and self._user_script.gui.i18n_field_unit) then
unit = " " .. i18n(self._user_script.gui.i18n_field_unit)
end
-- Note: it would be desirable to export a 'script.unit' field
-- instead of 'script.gui.i18n_field_unit' to properly format
-- Note: it would be desirable to export a 'self._user_script.unit' field
-- instead of 'self._user_script.gui.i18n_field_unit' to properly format
-- numeri values as with bytes below.
if script.gui.i18n_field_unit == 'field_units.bytes' then
if self._user_script.gui.i18n_field_unit == 'field_units.bytes' then
local formatted_threshold = format_utils.bytesToSize(hook.script_conf.threshold)
items[#items + 1] = string.format("%s (%s)", op,
formatted_threshold, i18n(granularity.i18n_title) or granularity.i18n_title)

View file

@ -20,13 +20,13 @@ end
-- ##############################################
function user_script_template:parseConfig(script, conf)
function user_script_template:parseConfig(conf)
return true, conf
end
-- ##############################################
function user_script_template:describeConfig(script, hooks_conf)
function user_script_template:describeConfig(hooks_conf)
return ''
end