summaryrefslogtreecommitdiff
path: root/src/rabbit_policies.erl
diff options
context:
space:
mode:
authorSimon MacMullen <simon@rabbitmq.com>2013-09-03 16:45:19 +0100
committerSimon MacMullen <simon@rabbitmq.com>2013-09-03 16:45:19 +0100
commit3af53e2a845f8d6329a807947502f6909db391eb (patch)
tree4a4bb8aeb1763518518dcc6475d3a1aebc26ae0d /src/rabbit_policies.erl
parent2e0e201e7336fc9381b8e3a29579d5399fdfa42e (diff)
downloadrabbitmq-server-3af53e2a845f8d6329a807947502f6909db391eb.tar.gz
Oops
Diffstat (limited to 'src/rabbit_policies.erl')
-rw-r--r--src/rabbit_policies.erl17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/rabbit_policies.erl b/src/rabbit_policies.erl
index a77e1e7b..ce763777 100644
--- a/src/rabbit_policies.erl
+++ b/src/rabbit_policies.erl
@@ -34,20 +34,25 @@ register() ->
{policy_validator, <<"dead-letter-routing-key">>}]],
ok.
-validate_policy([{<<"alternate-exchange">>, Value}])
+validate_policy(Terms) ->
+ lists:foldl(fun ({Key, Value}, ok) -> validate_policy0(Key, Value);
+ (_, Error) -> Error
+ end, ok, Terms).
+
+validate_policy0(<<"alternate-exchange">>, Value)
when is_binary(Value) ->
ok;
-validate_policy([{<<"alternate-exchange">>, Value}]) ->
+validate_policy0(<<"alternate-exchange">>, Value) ->
{error, "~p is not a valid alternate exchange name", [Value]};
-validate_policy([{<<"dead-letter-exchange">>, Value}])
+validate_policy0(<<"dead-letter-exchange">>, Value)
when is_binary(Value) ->
ok;
-validate_policy([{<<"dead-letter-exchange">>, Value}]) ->
+validate_policy0(<<"dead-letter-exchange">>, Value) ->
{error, "~p is not a valid dead letter exchange name", [Value]};
-validate_policy([{<<"dead-letter-routing-key">>, Value}])
+validate_policy0(<<"dead-letter-routing-key">>, Value)
when is_binary(Value) ->
ok;
-validate_policy([{<<"dead-letter-routing-key">>, Value}]) ->
+validate_policy0(<<"dead-letter-routing-key">>, Value) ->
{error, "~p is not a valid dead letter routing key", [Value]}.