X-Git-Url: http://git.archive.openwrt.org/?p=project%2Fnetifd.git;a=blobdiff_plain;f=scripts%2Futils.sh;h=60470a5627b3ecefc06fd30b253a1b7cc8f9b4db;hp=6a137c0610826f035c447871173edb2ef6f65ffd;hb=57bf943634acbdeaa41a0a67443e41627cc9c747;hpb=bdb28375d9872a49f7008fbdf2d8a1fad3790344 diff --git a/scripts/utils.sh b/scripts/utils.sh index 6a137c0..60470a5 100644 --- a/scripts/utils.sh +++ b/scripts/utils.sh @@ -1,3 +1,6 @@ +N=" +" + append() { local var="$1" local value="$2" @@ -13,21 +16,35 @@ add_default_handler() { esac } +set_default() { + local __s_var="$1" + local __s_val="$2" + eval "export -- \"$__s_var=\${$__s_var:-\$__s_val}\"" +} + _config_add_generic() { - json_add_array "" - json_add_string "" "$1" - json_add_int "" "$2" - json_close_array + local type="$1"; shift + + for name in "$@"; do + json_add_array "" + json_add_string "" "$name" + json_add_int "" "$type" + json_close_array + done } config_add_int() { - _config_add_generic "$1" 5 + _config_add_generic 5 "$@" +} + +config_add_array() { + _config_add_generic 1 "$@" } config_add_string() { - _config_add_generic "$1" 3 + _config_add_generic 3 "$@" } config_add_boolean() { - _config_add_generic "$1" 7 + _config_add_generic 7 "$@" }