diff options
| author | Simon MacMullen <simon@rabbitmq.com> | 2011-03-29 12:01:30 +0100 |
|---|---|---|
| committer | Simon MacMullen <simon@rabbitmq.com> | 2011-03-29 12:01:30 +0100 |
| commit | 042b3237005be68d2f6b9062dffb9456edfe2df7 (patch) | |
| tree | 7bfed9077b185f49b2b4895f70a64dcbb51e8698 /src | |
| parent | d5afad7006a4d1dcbdec5ea83e02ee7cc938f7a6 (diff) | |
| download | rabbitmq-server-git-042b3237005be68d2f6b9062dffb9456edfe2df7.tar.gz | |
Go back to serial/1.
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_binding.erl | 18 | ||||
| -rw-r--r-- | src/rabbit_exchange.erl | 10 |
2 files changed, 14 insertions, 14 deletions
diff --git a/src/rabbit_binding.erl b/src/rabbit_binding.erl index 6384cf0e76..db7b603e6e 100644 --- a/src/rabbit_binding.erl +++ b/src/rabbit_binding.erl @@ -134,7 +134,7 @@ add(Binding, InnerFun) -> add_notify(X, B) -> ok = rabbit_exchange:callback(X, add_binding, [transaction, X, B]), - Serial = rabbit_exchange:serial(X, binding), + Serial = rabbit_exchange:serial(X), fun () -> ok = rabbit_exchange:callback(X, add_binding, [Serial, X, B]), ok = rabbit_event:notify(binding_created, info(B)) @@ -411,17 +411,21 @@ process_deletions(Deletions) -> fun (XName, {X, Deleted, Bindings}, Acc) -> FlatBindings = lists:flatten(Bindings), pd_callback(transaction, X, Deleted, FlatBindings), - dict:store(XName, rabbit_exchange:serial( - X, case Deleted of - deleted -> exchange; - not_deleted -> binding - end), Acc) + case Deleted of + deleted -> Acc; + not_deleted -> dict:store(XName, + rabbit_exchange:serial(X), + Acc) + end end, dict:new(), Deletions), fun() -> dict:fold( fun (XName, {X, Deleted, Bindings}, ok) -> FlatBindings = lists:flatten(Bindings), - Serial = dict:fetch(XName, Serials), + Serial = case Deleted of + deleted -> none; + not_deleted -> dict:fetch(XName, Serials) + end, pd_callback(Serial, X, Deleted, FlatBindings), [rabbit_event:notify(binding_deleted, info(B)) || B <- FlatBindings], diff --git a/src/rabbit_exchange.erl b/src/rabbit_exchange.erl index 067df56008..1a8d8bed28 100644 --- a/src/rabbit_exchange.erl +++ b/src/rabbit_exchange.erl @@ -24,7 +24,7 @@ info_keys/0, info/1, info/2, info_all/1, info_all/2, publish/2, delete/2]). %% these must be run inside a mnesia tx --export([maybe_auto_delete/1, serial/2]). +-export([maybe_auto_delete/1, serial/1]). %%---------------------------------------------------------------------------- @@ -75,8 +75,7 @@ -spec(maybe_auto_delete/1:: (rabbit_types:exchange()) -> 'not_deleted' | {'deleted', rabbit_binding:deletions()}). --spec(serial/2:: (rabbit_types:exchange(), 'exchange' | 'binding') - -> 'none' | pos_integer()). +-spec(serial/1:: (rabbit_types:exchange()) -> 'none' | pos_integer()). -endif. @@ -324,10 +323,7 @@ unconditional_delete(X = #exchange{name = XName}) -> Bindings = rabbit_binding:remove_for_source(XName), {deleted, X, Bindings, rabbit_binding:remove_for_destination(XName)}. -serial(#exchange{}, exchange) -> - none; - -serial(#exchange{name = XName, type = XType}, binding) -> +serial(#exchange{name = XName, type = XType}) -> case (type_to_module(XType)):serialise_events() of true -> next_serial(XName); false -> none |
