diff options
author | Matthew Sackman <matthew@lshift.net> | 2009-06-17 17:31:47 +0100 |
---|---|---|
committer | Matthew Sackman <matthew@lshift.net> | 2009-06-17 17:31:47 +0100 |
commit | 2f9346bac74b8a91d42b13d225f5add815e97e73 (patch) | |
tree | ae352372a00e0770007497be7ffa4174ed8798c2 | |
parent | 3045dac32d73412b19181647e1f150bf2f88b3a5 (diff) | |
download | rabbitmq-server-2f9346bac74b8a91d42b13d225f5add815e97e73.tar.gz |
sorted out specs.
-rw-r--r-- | src/rabbit_amqqueue.erl | 2 | ||||
-rw-r--r-- | src/rabbit_disk_queue.erl | 12 | ||||
-rw-r--r-- | src/rabbit_guid.erl | 2 | ||||
-rw-r--r-- | src/rabbit_misc.erl | 2 | ||||
-rw-r--r-- | src/rabbit_mixed_queue.erl | 39 | ||||
-rw-r--r-- | src/rabbit_queue_mode_manager.erl | 14 |
6 files changed, 62 insertions, 9 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl index a1f36f31..9d3cead6 100644 --- a/src/rabbit_amqqueue.erl +++ b/src/rabbit_amqqueue.erl @@ -65,7 +65,7 @@ 'ok' | {'error', [{'error' | 'exit' | 'throw', any()}]}). -spec(start/0 :: () -> 'ok'). --spec(recover/0 :: () -> 'ok'). +-spec(recover/0 :: () -> {'ok', [amqqueue()]}). -spec(declare/4 :: (queue_name(), bool(), bool(), amqp_table()) -> amqqueue()). -spec(lookup/1 :: (queue_name()) -> {'ok', amqqueue()} | not_found()). diff --git a/src/rabbit_disk_queue.erl b/src/rabbit_disk_queue.erl index a33a4b28..2f8fd223 100644 --- a/src/rabbit_disk_queue.erl +++ b/src/rabbit_disk_queue.erl @@ -231,19 +231,19 @@ -ifdef(use_specs). -type(seq_id() :: non_neg_integer()). --type(seq_id_or_next() :: { seq_id() | 'next' }). +-type(seq_id_or_next() :: ( seq_id() | 'next' )). -spec(start_link/0 :: () -> - {'ok', pid()} | 'ignore' | {'error', any()}). + ({'ok', pid()} | 'ignore' | {'error', any()})). -spec(publish/4 :: (queue_name(), msg_id(), binary(), bool()) -> 'ok'). -spec(publish_with_seq/5 :: (queue_name(), msg_id(), seq_id_or_next(), binary(), bool()) -> 'ok'). -spec(deliver/1 :: (queue_name()) -> - {'empty' | {msg_id(), binary(), non_neg_integer(), - bool(), {msg_id(), seq_id()}, non_neg_integer()}}). + ('empty' | {msg_id(), binary(), non_neg_integer(), + bool(), {msg_id(), seq_id()}, non_neg_integer()})). -spec(phantom_deliver/1 :: (queue_name()) -> - { 'empty' | {msg_id(), bool(), {msg_id(), seq_id()}, - non_neg_integer()}}). + ( 'empty' | {msg_id(), bool(), {msg_id(), seq_id()}, + non_neg_integer()})). -spec(ack/2 :: (queue_name(), [{msg_id(), seq_id()}]) -> 'ok'). -spec(tx_publish/2 :: (msg_id(), binary()) -> 'ok'). -spec(tx_commit/3 :: (queue_name(), [msg_id()], [{msg_id(), seq_id()}]) -> diff --git a/src/rabbit_guid.erl b/src/rabbit_guid.erl index fe5acc83..3aa2989a 100644 --- a/src/rabbit_guid.erl +++ b/src/rabbit_guid.erl @@ -42,7 +42,7 @@ terminate/2, code_change/3]). -define(SERVER, ?MODULE). --define(SERIAL_FILENAME, rabbit_guid). +-define(SERIAL_FILENAME, "rabbit_guid"). -record(state, {serial}). diff --git a/src/rabbit_misc.erl b/src/rabbit_misc.erl index bf4a69db..2971e332 100644 --- a/src/rabbit_misc.erl +++ b/src/rabbit_misc.erl @@ -114,7 +114,7 @@ -spec(format_stderr/2 :: (string(), [any()]) -> 'ok'). -spec(start_applications/1 :: ([atom()]) -> 'ok'). -spec(stop_applications/1 :: ([atom()]) -> 'ok'). --spec(unfold/2 :: (fun ((A) -> ({'true', B, A} | 'false')), A) -> [B]). +-spec(unfold/2 :: (fun ((A) -> ({'true', B, A} | 'false')), A) -> {[B], A}). -endif. diff --git a/src/rabbit_mixed_queue.erl b/src/rabbit_mixed_queue.erl index 6caea55d..9aa290a0 100644 --- a/src/rabbit_mixed_queue.erl +++ b/src/rabbit_mixed_queue.erl @@ -49,6 +49,45 @@ } ). +-ifdef(use_specs). + +-type(mode() :: ( 'disk' | 'mixed' )). +-type(mqstate() :: #mqstate { mode :: mode(), + msg_buf :: queue(), + queue :: queue_name(), + is_durable :: bool(), + length :: non_neg_integer() + }). +-type(acktag() :: ( 'noack' | { non_neg_integer(), non_neg_integer() })). + +-spec(init/3 :: (queue_name(), bool(), mode()) -> + {'ok', mqstate()}). +-spec(publish/2 :: (message(), mqstate()) -> + {'ok', mqstate()}). +-spec(publish_delivered/2 :: (message(), mqstate()) -> + {'ok', acktag(), mqstate()}). +-spec(deliver/1 :: (mqstate()) -> + {('empty' | {message(), bool(), acktag(), non_neg_integer()}), + mqstate()}). +-spec(ack/2 :: ([acktag()], mqstate()) -> + {'ok', mqstate()}). +-spec(tx_publish/2 :: (message(), mqstate()) -> + {'ok', mqstate()}). +-spec(tx_commit/3 :: ([message()], [acktag()], mqstate()) -> + {'ok', mqstate()}). +-spec(tx_cancel/2 :: ([message()], mqstate()) -> + {'ok', mqstate()}). +-spec(requeue/2 :: ([{message(), acktag()}], mqstate()) -> + {'ok', mqstate()}). +-spec(purge/1 :: (mqstate()) -> + {'ok', mqstate()}). +-spec(delete_queue/1 :: (mqstate()) -> + {'ok', mqstate()}). +-spec(length/1 :: (mqstate()) -> non_neg_integer()). +-spec(is_empty/1 :: (mqstate()) -> bool()). + +-endif. + init(Queue, IsDurable, disk) -> purge_non_persistent_messages( #mqstate { mode = disk, msg_buf = queue:new(), queue = Queue, diff --git a/src/rabbit_queue_mode_manager.erl b/src/rabbit_queue_mode_manager.erl index 6bb197ef..b36bb8be 100644 --- a/src/rabbit_queue_mode_manager.erl +++ b/src/rabbit_queue_mode_manager.erl @@ -43,6 +43,20 @@ -define(SERVER, ?MODULE). +-ifdef(use_specs). + +-type(mode() :: ( 'unlimited' | 'ram_disk' | 'disk_only' )). +-type(queue_mode() :: ( 'mixed' | 'disk' )). + +-spec(start_link/0 :: () -> + ({'ok', pid()} | 'ignore' | {'error', any()})). +-spec(register/1 :: (pid()) -> {'ok', queue_mode()}). +-spec(change_memory_footprint/2 :: (pid(), bool()) -> 'ok'). +-spec(reduce_memory_footprint/0 :: () -> 'ok'). +-spec(increase_memory_footprint/0 :: () -> 'ok'). + +-endif. + -record(state, { mode, queues }). |