diff options
| author | Daniil Fedotov <dfedotov@pivotal.io> | 2016-08-24 15:42:48 +0100 |
|---|---|---|
| committer | Daniil Fedotov <dfedotov@pivotal.io> | 2016-08-24 15:52:50 +0100 |
| commit | 15116daafe3f1ef1b55427c35b27c51a5cf2592d (patch) | |
| tree | 2c61608b737adae97b4e23f0864815eacd9cdbb5 /src | |
| parent | 086fd01ae1356c358bbc2ebc0f02a375b8cd618b (diff) | |
| download | rabbitmq-server-git-15116daafe3f1ef1b55427c35b27c51a5cf2592d.tar.gz | |
operator_policy runtime parameter
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_policy.erl | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/rabbit_policy.erl b/src/rabbit_policy.erl index 18d5c44261..59367fb182 100644 --- a/src/rabbit_policy.erl +++ b/src/rabbit_policy.erl @@ -58,6 +58,9 @@ register() -> rabbit_registry:register(runtime_parameter, <<"policy">>, ?MODULE). +register() -> + rabbit_registry:register(runtime_parameter, <<"operator_policy">>, ?MODULE). + name(#amqqueue{policy = Policy}) -> name0(Policy); name(#exchange{policy = Policy}) -> name0(Policy). @@ -270,6 +273,19 @@ notify_clear(VHost, <<"policy">>, Name) -> rabbit_event:notify(policy_cleared, [{name, Name}, {vhost, VHost}]), update_policies(VHost). +% TODO: copy-paste. Check +validate(_VHost, <<"operator_policy">>, Name, Term, _User) -> + rabbit_parameter_validation:proplist( + Name, policy_validation(), Term). + +notify(VHost, <<"operator_policy">>, Name, Term) -> + rabbit_event:notify(policy_set, [{name, Name}, {vhost, VHost} | Term]), + update_policies(VHost). + +notify_clear(VHost, <<"operator_policy">>, Name) -> + rabbit_event:notify(policy_cleared, [{name, Name}, {vhost, VHost}]), + update_policies(VHost). + %%---------------------------------------------------------------------------- %% [1] We need to prevent this from becoming O(n^2) in a similar |
