summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Klishin <michael@clojurewerkz.org>2019-11-16 06:46:55 +0300
committerMichael Klishin <michael@clojurewerkz.org>2019-11-16 06:46:55 +0300
commit8f085a3ec546137ca7c5d2adc43cfb12f86af294 (patch)
tree1aa78d8f5be50f1a729b51edcab656c483ec1f98
parent5d9ea1c5ca3d809cbb4134bfde38d2678ac29315 (diff)
downloadrabbitmq-server-git-8f085a3ec546137ca7c5d2adc43cfb12f86af294.tar.gz
rabbit_definitions:import_parsed/{1,2}: support proplists
-rw-r--r--src/rabbit_definitions.erl10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/rabbit_definitions.erl b/src/rabbit_definitions.erl
index 709bfc0a85..260284d19c 100644
--- a/src/rabbit_definitions.erl
+++ b/src/rabbit_definitions.erl
@@ -61,13 +61,17 @@ import_raw(Body, VHost) ->
{ok, _, Map} -> apply_defs(Map, ?INTERNAL_USER, fun() -> ok end, VHost)
end.
--spec import_parsed(Defs :: #{any() => any()}) -> ok | {error, term()}.
-import_parsed(Body0) ->
+-spec import_parsed(Defs :: #{any() => any()} | list()) -> ok | {error, term()}.
+import_parsed(Body0) when is_list(Body0) ->
+ import_parsed(maps:from_list(Body0));
+import_parsed(Body0) when is_map(Body0) ->
rabbit_log:info("Asked to import definitions. Acting user: ~s", [?INTERNAL_USER]),
Body = atomise_map_keys(Body0),
apply_defs(Body, ?INTERNAL_USER).
--spec import_parsed(Defs :: #{any() => any()}, VHost :: vhost:name()) -> ok | {error, term()}.
+-spec import_parsed(Defs :: #{any() => any() | list()}, VHost :: vhost:name()) -> ok | {error, term()}.
+import_parsed(Body0, VHost) when is_list(Body0) ->
+ import_parsed(maps:from_list(Body0), VHost);
import_parsed(Body0, VHost) ->
rabbit_log:info("Asked to import definitions. Acting user: ~s", [?INTERNAL_USER]),
Body = atomise_map_keys(Body0),