summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Sackman <matthew@rabbitmq.com>2011-01-11 15:20:36 +0000
committerMatthew Sackman <matthew@rabbitmq.com>2011-01-11 15:20:36 +0000
commitc048e064f7d0a69a8ab707ede80acddd339a9d4f (patch)
tree631f0c7ac0326f249a7f05b401729182168faf42
parenta74bd7a34ecff0a9cb9c7c8e4c6b1248d49cb41d (diff)
downloadrabbitmq-server-c048e064f7d0a69a8ab707ede80acddd339a9d4f.tar.gz
cosmetics and minor factorings
-rw-r--r--src/rabbit_amqqueue.erl5
-rw-r--r--src/rabbit_binding.erl38
-rw-r--r--src/rabbit_event.erl4
-rw-r--r--src/rabbit_exchange.erl5
-rw-r--r--src/rabbit_misc.erl4
5 files changed, 29 insertions, 27 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl
index ba8ce6da..56fc64fe 100644
--- a/src/rabbit_amqqueue.erl
+++ b/src/rabbit_amqqueue.erl
@@ -460,8 +460,9 @@ internal_delete(QueueName) ->
[_] -> internal_delete1(QueueName)
end
end,
- fun ({error, _} = Err, _Tx) -> Err;
- (Deletions, Tx) ->
+ fun ({error, _} = Err, _Tx) ->
+ Err;
+ (Deletions, Tx) ->
ok = rabbit_binding:process_deletions(Deletions, Tx)
end).
diff --git a/src/rabbit_binding.erl b/src/rabbit_binding.erl
index 9d2e2a04..93f9dc27 100644
--- a/src/rabbit_binding.erl
+++ b/src/rabbit_binding.erl
@@ -120,8 +120,7 @@ exists(Binding) ->
binding_action(
Binding,
fun (_Src, _Dst, B) ->
- Result = mnesia:read({rabbit_route, B}) /= [],
- fun (_Tx) -> Result end
+ rabbit_misc:const(mnesia:read({rabbit_route, B}) /= [])
end).
add(Binding) -> add(Binding, fun (_Src, _Dst) -> ok end).
@@ -146,13 +145,13 @@ add(Binding, InnerFun) ->
Src, add_binding,
[Tx, Src, B]),
rabbit_event:notify_if(
- not(Tx),
+ not Tx,
binding_created, info(B))
end;
[_] -> fun (_Tx) -> ok end
end;
{error, _} = Err ->
- fun (_Tx) -> Err end
+ rabbit_misc:const(Err)
end
end).
@@ -179,10 +178,10 @@ remove(Binding, InnerFun) ->
end
end,
fun (Tx) ->
- case {Result, Tx} of
- {{ok, Deletions}, _} ->
+ case Result of
+ {ok, Deletions} ->
ok = process_deletions(Deletions, Tx);
- {{error, _} = Err, _} ->
+ {error, _} = Err ->
Err
end
end
@@ -296,18 +295,17 @@ sync_binding(Binding, Durable, Fun) ->
call_with_source_and_destination(SrcName, DstName, Fun) ->
SrcTable = table_for_resource(SrcName),
DstTable = table_for_resource(DstName),
- ErrFun = fun (Err) ->
- fun (_Tx) -> Err end
- end,
+ ErrFun = fun (Err) -> rabbit_misc:const(Err) end,
rabbit_misc:execute_mnesia_tx_with_tail(
- fun () -> case {mnesia:read({SrcTable, SrcName}),
- mnesia:read({DstTable, DstName})} of
- {[Src], [Dst]} -> Fun(Src, Dst);
- {[], [_] } -> ErrFun({error, source_not_found});
- {[_], [] } -> ErrFun({error, destination_not_found});
- {[], [] } ->
- ErrFun({error, source_and_destination_not_found})
- end
+ fun () ->
+ case {mnesia:read({SrcTable, SrcName}),
+ mnesia:read({DstTable, DstName})} of
+ {[Src], [Dst]} -> Fun(Src, Dst);
+ {[], [_] } -> ErrFun({error, source_not_found});
+ {[_], [] } -> ErrFun({error, destination_not_found});
+ {[], [] } -> ErrFun({error,
+ source_and_destination_not_found})
+ end
end).
table_for_resource(#resource{kind = exchange}) -> rabbit_exchange;
@@ -432,12 +430,12 @@ process_deletions(Deletions, Tx) ->
dict:fold(
fun (_XName, {X, Deleted, Bindings}, ok) ->
FlatBindings = lists:flatten(Bindings),
- [rabbit_event:notify_if(not(Tx), binding_deleted, info(B)) ||
+ [rabbit_event:notify_if(not Tx, binding_deleted, info(B)) ||
B <- FlatBindings],
case Deleted of
not_deleted -> rabbit_exchange:callback(X, remove_bindings,
[Tx, X, FlatBindings]);
- deleted -> rabbit_event:notify_if(not(Tx), exchange_deleted,
+ deleted -> rabbit_event:notify_if(not Tx, exchange_deleted,
[{name, X#exchange.name}]),
rabbit_exchange:callback(X, delete,
[Tx, X, FlatBindings])
diff --git a/src/rabbit_event.erl b/src/rabbit_event.erl
index cf126dcc..9755654b 100644
--- a/src/rabbit_event.erl
+++ b/src/rabbit_event.erl
@@ -141,8 +141,8 @@ if_enabled(_State, Fun) ->
Fun(),
ok.
-notify_if(false, _Type, _Props) -> ok;
-notify_if(true, Type, Props) -> notify(Type, Props).
+notify_if(true, Type, Props) -> notify(Type, Props);
+notify_if(false, _Type, _Props) -> ok.
notify(Type, Props) ->
try
diff --git a/src/rabbit_exchange.erl b/src/rabbit_exchange.erl
index 28c7f4b8..0ec57564 100644
--- a/src/rabbit_exchange.erl
+++ b/src/rabbit_exchange.erl
@@ -145,7 +145,7 @@ declare(XName, Type, Durable, AutoDelete, Internal, Args) ->
fun ({new, Exchange}, Tx) ->
callback(Exchange, create, [Tx, Exchange]),
rabbit_event:notify_if(
- not(Tx), exchange_created, info(Exchange)),
+ not Tx, exchange_created, info(Exchange)),
Exchange;
({existing, Exchange}, _Tx) ->
Exchange;
@@ -299,7 +299,8 @@ delete(XName, IfUnused) ->
ok = rabbit_binding:process_deletions(
rabbit_binding:add_deletion(
XName, {X, deleted, Bs}, Deletions), Tx);
- (Error = {error, _InUseOrNotFound}, _Tx) -> Error
+ (Error = {error, _InUseOrNotFound}, _Tx) ->
+ Error
end).
maybe_auto_delete(#exchange{auto_delete = false}) ->
diff --git a/src/rabbit_misc.erl b/src/rabbit_misc.erl
index 133d2a6c..dbc09e7f 100644
--- a/src/rabbit_misc.erl
+++ b/src/rabbit_misc.erl
@@ -70,7 +70,7 @@
-export([all_module_attributes/1, build_acyclic_graph/3]).
-export([now_ms/0]).
-export([lock_file/1]).
--export([const_ok/1]).
+-export([const_ok/1, const/1]).
%%----------------------------------------------------------------------------
@@ -207,6 +207,7 @@
-spec(now_ms/0 :: () -> non_neg_integer()).
-spec(lock_file/1 :: (file:filename()) -> rabbit_types:ok_or_error('eexist')).
-spec(const_ok/1 :: (any()) -> 'ok').
+-spec(const/1 :: (A) -> fun ((_) -> A)).
-endif.
@@ -857,3 +858,4 @@ lock_file(Path) ->
end.
const_ok(_) -> ok.
+const(X) -> fun (_) -> X end.