diff options
author | Simon MacMullen <simon@rabbitmq.com> | 2010-08-31 13:47:46 +0100 |
---|---|---|
committer | Simon MacMullen <simon@rabbitmq.com> | 2010-08-31 13:47:46 +0100 |
commit | e6d8fc812a97c4ff3c19e0bc00a9f3e8d42bd8d4 (patch) | |
tree | 936e86077aeade81d614e5466db129eb8eed2fea | |
parent | 875739bda3f3008c525af416c69b905cc8105873 (diff) | |
download | rabbitmq-server-e6d8fc812a97c4ff3c19e0bc00a9f3e8d42bd8d4.tar.gz |
Allow byte, int, short, long.
-rw-r--r-- | src/rabbit_amqqueue.erl | 16 | ||||
-rw-r--r-- | src/rabbit_amqqueue_process.erl | 4 |
2 files changed, 10 insertions, 10 deletions
diff --git a/src/rabbit_amqqueue.erl b/src/rabbit_amqqueue.erl index 17accb6d..00a12267 100644 --- a/src/rabbit_amqqueue.erl +++ b/src/rabbit_amqqueue.erl @@ -56,7 +56,7 @@ -include("rabbit.hrl"). -include_lib("stdlib/include/qlc.hrl"). --define(EXPIRES_TYPE, signedint). +-define(EXPIRES_TYPES, [byte, short, signedint, long]). %%---------------------------------------------------------------------------- @@ -313,13 +313,13 @@ check_declare_arguments(QueueName, Args) -> check_expires_argument(undefined) -> ok; -check_expires_argument({?EXPIRES_TYPE, Expires}) - when is_integer(Expires) andalso Expires > 0 -> - ok; -check_expires_argument({?EXPIRES_TYPE, _Expires}) -> - {error, expires_zero_or_less}; -check_expires_argument(Arg) -> - {error, {expires_not_of_type_int, Arg}}. +check_expires_argument({Type, Expires}) when Expires > 0 -> + case lists:any(fun(E) -> E == Type end, ?EXPIRES_TYPES) of + true -> ok; + false -> {error, {expires_not_of_acceptable_type, Type, Expires}} + end; +check_expires_argument({_Type, _Expires}) -> + {error, expires_zero_or_less}. list(VHostPath) -> mnesia:dirty_match_object( diff --git a/src/rabbit_amqqueue_process.erl b/src/rabbit_amqqueue_process.erl index 8bb56da5..90a0503b 100644 --- a/src/rabbit_amqqueue_process.erl +++ b/src/rabbit_amqqueue_process.erl @@ -146,8 +146,8 @@ code_change(_OldVsn, State, _Extra) -> init_expires(State = #q{q = #amqqueue{arguments = Arguments}}) -> case rabbit_misc:table_lookup(Arguments, <<"x-expires">>) of - {signedint, Expires} -> ensure_expiry_timer(State#q{expires = Expires}); - undefined -> State + {_Type, Expires} -> ensure_expiry_timer(State#q{expires = Expires}); + undefined -> State end. declare(Recover, From, |