Skip to content

Commit 4a3752a

Browse files
committed
Use more idiomatic maybe feature
1 parent 1679d0c commit 4a3752a

File tree

3 files changed

+13
-33
lines changed

3 files changed

+13
-33
lines changed

deps/rabbit/src/rabbit_queue_type_util.erl

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@
1212
check_auto_delete/1,
1313
check_exclusive/1,
1414
check_non_durable/1,
15-
run_checks/2,
1615
erpc_call/5]).
1716

1817
-include_lib("rabbit_common/include/rabbit.hrl").
@@ -62,16 +61,6 @@ check_non_durable(Q) when not ?amqqueue_is_durable(Q) ->
6261
{protocol_error, precondition_failed, "invalid property 'non-durable' for ~ts",
6362
[rabbit_misc:rs(Name)]}.
6463

65-
run_checks([], _) ->
66-
ok;
67-
run_checks([C | Checks], Q) ->
68-
case C(Q) of
69-
ok ->
70-
run_checks(Checks, Q);
71-
Err ->
72-
Err
73-
end.
74-
7564
-spec erpc_call(node(), module(), atom(), list(), non_neg_integer() | infinity) ->
7665
term() | {error, term()}.
7766
erpc_call(Node, M, F, A, _Timeout)

deps/rabbit/src/rabbit_quorum_queue.erl

Lines changed: 5 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -248,15 +248,11 @@ handle_event(QName, {From, Evt}, QState) ->
248248
{new | existing, amqqueue:amqqueue()} |
249249
{protocol_error, Type :: atom(), Reason :: string(), Args :: term()}.
250250
declare(Q, _Node) when ?amqqueue_is_quorum(Q) ->
251-
case rabbit_queue_type_util:run_checks(
252-
[fun rabbit_queue_type_util:check_auto_delete/1,
253-
fun rabbit_queue_type_util:check_exclusive/1,
254-
fun rabbit_queue_type_util:check_non_durable/1],
255-
Q) of
256-
ok ->
257-
start_cluster(Q);
258-
Err ->
259-
Err
251+
maybe
252+
ok ?= rabbit_queue_type_util:check_auto_delete(Q),
253+
ok ?= rabbit_queue_type_util:check_exclusive(Q),
254+
ok ?= rabbit_queue_type_util:check_non_durable(Q),
255+
start_cluster(Q)
260256
end.
261257

262258
start_cluster(Q) ->

deps/rabbit/src/rabbit_stream_queue.erl

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -137,19 +137,14 @@ is_compatible(_, _, _) ->
137137
-spec declare(amqqueue:amqqueue(), node()) ->
138138
{'new' | 'existing', amqqueue:amqqueue()} |
139139
{protocol_error, Type :: atom(), Reason :: string(), Args :: term()}.
140-
declare(Q0, _Node) when ?amqqueue_is_stream(Q0) ->
141-
case rabbit_queue_type_util:run_checks(
142-
[fun rabbit_queue_type_util:check_auto_delete/1,
143-
fun rabbit_queue_type_util:check_exclusive/1,
144-
fun rabbit_queue_type_util:check_non_durable/1,
145-
fun check_max_segment_size_bytes/1,
146-
fun check_filter_size/1
147-
],
148-
Q0) of
149-
ok ->
150-
create_stream(Q0);
151-
Err ->
152-
Err
140+
declare(Q, _Node) when ?amqqueue_is_stream(Q) ->
141+
maybe
142+
ok ?= rabbit_queue_type_util:check_auto_delete(Q),
143+
ok ?= rabbit_queue_type_util:check_exclusive(Q),
144+
ok ?= rabbit_queue_type_util:check_non_durable(Q),
145+
ok ?= check_max_segment_size_bytes(Q),
146+
ok ?= check_filter_size(Q),
147+
create_stream(Q)
153148
end.
154149

155150
check_max_segment_size_bytes(Q) ->

0 commit comments

Comments
 (0)