diff options
| author | Matthias Radestock <matthias@lshift.net> | 2010-02-11 15:55:15 +0000 |
|---|---|---|
| committer | Matthias Radestock <matthias@lshift.net> | 2010-02-11 15:55:15 +0000 |
| commit | 1f1b32e6207ba233958314627f679109a03248bc (patch) | |
| tree | 6d35e3f1f888cdeb1703a71d660bd274d52359e1 /src | |
| parent | 315537ea138470c93a91d2ddccd7b701d42bfd39 (diff) | |
| download | rabbitmq-server-git-1f1b32e6207ba233958314627f679109a03248bc.tar.gz | |
cosmetic: moving things around
to shrink the diff with bug21673
Diffstat (limited to 'src')
| -rw-r--r-- | src/rabbit_amqqueue_process.erl | 40 |
1 files changed, 20 insertions, 20 deletions
diff --git a/src/rabbit_amqqueue_process.erl b/src/rabbit_amqqueue_process.erl index a8be40e453..6a679aaaf2 100644 --- a/src/rabbit_amqqueue_process.erl +++ b/src/rabbit_amqqueue_process.erl @@ -226,6 +226,26 @@ deliver_immediately(Message, IsDelivered, {not_offered, State} end. +run_message_queue(State = #q{message_buffer = MessageBuffer}) -> + run_message_queue(MessageBuffer, State). + +run_message_queue(MessageBuffer, State) -> + case queue:out(MessageBuffer) of + {{value, {Message, IsDelivered}}, BufferTail} -> + case deliver_immediately(Message, IsDelivered, State) of + {offered, true, NewState} -> + persist_delivery(qname(State), Message, IsDelivered), + run_message_queue(BufferTail, NewState); + {offered, false, NewState} -> + persist_auto_ack(qname(State), Message), + run_message_queue(BufferTail, NewState); + {not_offered, NewState} -> + NewState#q{message_buffer = MessageBuffer} + end; + {empty, _} -> + State#q{message_buffer = MessageBuffer} + end. + attempt_delivery(none, _ChPid, Message, State) -> case deliver_immediately(Message, false, State) of {offered, false, State1} -> @@ -348,26 +368,6 @@ check_exclusive_access(none, true, State) -> false -> in_use end. -run_message_queue(State = #q{message_buffer = MessageBuffer}) -> - run_message_queue(MessageBuffer, State). - -run_message_queue(MessageBuffer, State) -> - case queue:out(MessageBuffer) of - {{value, {Message, IsDelivered}}, BufferTail} -> - case deliver_immediately(Message, IsDelivered, State) of - {offered, true, NewState} -> - persist_delivery(qname(State), Message, IsDelivered), - run_message_queue(BufferTail, NewState); - {offered, false, NewState} -> - persist_auto_ack(qname(State), Message), - run_message_queue(BufferTail, NewState); - {not_offered, NewState} -> - NewState#q{message_buffer = MessageBuffer} - end; - {empty, _} -> - State#q{message_buffer = MessageBuffer} - end. - is_unused(State) -> queue:is_empty(State#q.active_consumers) andalso queue:is_empty(State#q.blocked_consumers). |
