diff options
| -rw-r--r-- | src/rabbit_exchange.erl | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/src/rabbit_exchange.erl b/src/rabbit_exchange.erl index 2dcaf791bc..5c4be4ef9e 100644 --- a/src/rabbit_exchange.erl +++ b/src/rabbit_exchange.erl @@ -209,7 +209,7 @@ route_internal(#exchange{name = Name}, RoutingKey) -> MatchHead = #route{binding = #binding{exchange_name = Name, queue_name = '$1', key = RoutingKey, - args = '_'}}, + _ = '_'}}, lookup_qpids(mnesia:dirty_select(route, [{MatchHead, [], ['$1']}])). lookup_qpids(Queues) -> @@ -226,18 +226,14 @@ lookup_qpids(Queues) -> delete_bindings_for_exchange(ExchangeName) -> indexed_delete( #route{binding = #binding{exchange_name = ExchangeName, - queue_name = '_', - key = '_', - args = '_'}}, + _ = '_'}}, fun delete_forward_routes/1, fun mnesia:delete_object/1). delete_bindings_for_queue(QueueName) -> Exchanges = exchanges_for_queue(QueueName), indexed_delete( - reverse_route(#route{binding = #binding{exchange_name = '_', - queue_name = QueueName, - key = '_', - args = '_'}}), + reverse_route(#route{binding = #binding{ queue_name = QueueName, + _ = '_'}}), fun mnesia:delete_object/1, fun delete_forward_routes/1), [begin [X] = mnesia:read({exchange, ExchangeName}), @@ -260,8 +256,7 @@ exchanges_for_queue(QueueName) -> MatchHead = reverse_route( #route{binding = #binding{exchange_name = '$1', queue_name = QueueName, - key = '_', - args = '_'}}), + _ = '_'}}), sets:to_list( sets:from_list( mnesia:select(reverse_route, [{MatchHead, [], ['$1']}]))). @@ -269,8 +264,7 @@ exchanges_for_queue(QueueName) -> has_bindings(ExchangeName) -> MatchHead = #route{binding = #binding{exchange_name = ExchangeName, queue_name = '$1', - key = '_', - args = '_'}}, + _ = '_'}}, continue(mnesia:select(route, [{MatchHead, [], ['$1']}], 1, read)). continue('$end_of_table') -> false; @@ -417,9 +411,7 @@ unconditional_delete(#exchange{name = ExchangeName}) -> %% return {QueueName, RoutingKey, Arguments} tuples list_exchange_bindings(ExchangeName) -> Route = #route{binding = #binding{exchange_name = ExchangeName, - queue_name = '_', - key = '_', - args = '_'}}, + _ = '_'}}, [{QueueName, RoutingKey, Arguments} || #route{binding = #binding{queue_name = QueueName, key = RoutingKey, |
