diff options
author | Simon MacMullen <simon@rabbitmq.com> | 2012-05-17 17:55:40 +0100 |
---|---|---|
committer | Simon MacMullen <simon@rabbitmq.com> | 2012-05-17 17:55:40 +0100 |
commit | 426d6249a87438fd45c4190ffa8a1c6ab8d9ab10 (patch) | |
tree | 375c0f231314c308c58747c1354e3faa72900258 /deps/rabbitmq_federation/src/rabbit_federation_link_sup.erl | |
parent | 20d8d6c0a0a93e0e08a0df8e780c7618fe016d5b (diff) | |
download | rabbitmq-server-git-426d6249a87438fd45c4190ffa8a1c6ab8d9ab10.tar.gz |
Federate based on policy.
Diffstat (limited to 'deps/rabbitmq_federation/src/rabbit_federation_link_sup.erl')
-rw-r--r-- | deps/rabbitmq_federation/src/rabbit_federation_link_sup.erl | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/deps/rabbitmq_federation/src/rabbit_federation_link_sup.erl b/deps/rabbitmq_federation/src/rabbit_federation_link_sup.erl index 0cba6336e1..96e4e28d38 100644 --- a/deps/rabbitmq_federation/src/rabbit_federation_link_sup.erl +++ b/deps/rabbitmq_federation/src/rabbit_federation_link_sup.erl @@ -31,7 +31,7 @@ start_link(Args) -> supervisor2:start_link(?MODULE, Args). adjust(Sup, X, everything) -> [stop(Sup, Upstream) || {Upstream, _, _, _} <- supervisor2:which_children(Sup)], - case upstream_set(X) of + case rabbit_federation_upstream:for(X) of {ok, UpstreamSet} -> [{ok, _Pid} = supervisor2:start_child(Sup, Spec) || Spec <- specs(UpstreamSet, X)]; @@ -58,7 +58,7 @@ adjust(Sup, X, {connection, ConnName}) -> [start(Sup, NewUpstream, X) || NewUpstream <- NewUpstreams]; adjust(Sup, X, {clear_connection, ConnName}) -> - prune_for_upstream_set(<<"all">>, X), + prune_for_upstream_set(<<"all">>, X), %% TODO this is broken [stop(Sup, Upstream) || Upstream <- children(Sup, ConnName)]; %% TODO handle changes of upstream sets minimally (bug 24853) @@ -87,19 +87,15 @@ children(Sup, ConnName) -> ConnName, [U || {U, _, _, _} <- supervisor2:which_children(Sup)]). upstreams(X, ConnName) -> - case upstream_set(X) of + case rabbit_federation_upstream:for(X) of {ok, UpstreamSet} -> rabbit_federation_upstream:from_set(UpstreamSet, X, ConnName); {error, not_found} -> [] end. -upstream_set(_X) -> - %% TODO ahem - {ok, <<"all">>}. - prune_for_upstream_set(Set, X = #exchange{name = XName}) -> - case upstream_set(X) of + case rabbit_federation_upstream:for(X) of {ok, Set} -> Us = rabbit_federation_upstream:from_set(Set, X), ok = rabbit_federation_db:prune_scratch(XName, Us); _ -> ok |