Be able to merge old style configs with {listen,...}
This commit is contained in:
parent
6d25db6600
commit
b5ac0db895
|
@ -372,16 +372,27 @@ exit_or_halt(ExitText) ->
|
||||||
|
|
||||||
get_config_option_key(Name, Val) ->
|
get_config_option_key(Name, Val) ->
|
||||||
if Name == listen ->
|
if Name == listen ->
|
||||||
lists:foldl(
|
case Val of
|
||||||
fun({port, Port}, {_, IP, T}) ->
|
{{Port, IP, Trans}, _Mod, _Opts} ->
|
||||||
{Port, IP, T};
|
{Port, IP, Trans};
|
||||||
({ip, IP}, {Port, _, T}) ->
|
{{Port, Trans}, _Mod, _Opts} when Trans == tcp; Trans == udp ->
|
||||||
{Port, IP, T};
|
{Port, {0,0,0,0}, Trans};
|
||||||
({transport, T}, {Port, IP, _}) ->
|
{{Port, IP}, _Mod, _Opts} ->
|
||||||
{Port, IP, T};
|
{Port, IP, tcp};
|
||||||
(_, Res) ->
|
{Port, _Mod, _Opts} ->
|
||||||
Res
|
{Port, {0,0,0,0}, tcp};
|
||||||
end, {5222, {0,0,0,0}, tcp}, Val);
|
V when is_list(V) ->
|
||||||
|
lists:foldl(
|
||||||
|
fun({port, Port}, {_, IP, T}) ->
|
||||||
|
{Port, IP, T};
|
||||||
|
({ip, IP}, {Port, _, T}) ->
|
||||||
|
{Port, IP, T};
|
||||||
|
({transport, T}, {Port, IP, _}) ->
|
||||||
|
{Port, IP, T};
|
||||||
|
(_, Res) ->
|
||||||
|
Res
|
||||||
|
end, {5222, {0,0,0,0}, tcp}, Val)
|
||||||
|
end;
|
||||||
is_tuple(Val) ->
|
is_tuple(Val) ->
|
||||||
element(1, Val);
|
element(1, Val);
|
||||||
true ->
|
true ->
|
||||||
|
@ -397,7 +408,6 @@ maps_to_lists(IMap) ->
|
||||||
[{Name, Val} | Res]
|
[{Name, Val} | Res]
|
||||||
end, [], IMap).
|
end, [], IMap).
|
||||||
|
|
||||||
|
|
||||||
merge_configs(Terms, ResMap) ->
|
merge_configs(Terms, ResMap) ->
|
||||||
lists:foldl(fun({Name, Val}, Map) when is_list(Val) ->
|
lists:foldl(fun({Name, Val}, Map) when is_list(Val) ->
|
||||||
Old = maps:get(Name, Map, #{}),
|
Old = maps:get(Name, Map, #{}),
|
||||||
|
|
Loading…
Reference in New Issue