diff options
author | Alvaro Videla <alvaro@rabbitmq.com> | 2014-01-22 19:05:21 +0100 |
---|---|---|
committer | Alvaro Videla <alvaro@rabbitmq.com> | 2014-01-22 19:05:21 +0100 |
commit | 7916942cd277039f60731ab79cf435679d98ae6c (patch) | |
tree | d1d052f12f093b8193286a9cbe436da7a49bb519 | |
parent | 09b278d9093a83c8c7dbb283408f3311de85efd7 (diff) | |
download | rabbitmq-server-7916942cd277039f60731ab79cf435679d98ae6c.tar.gz |
passes vhost to interceptor
-rw-r--r-- | src/rabbit_channel.erl | 5 | ||||
-rw-r--r-- | src/rabbit_channel_interceptor.erl | 16 |
2 files changed, 11 insertions, 10 deletions
diff --git a/src/rabbit_channel.erl b/src/rabbit_channel.erl index 43471eb7..88922a8f 100644 --- a/src/rabbit_channel.erl +++ b/src/rabbit_channel.erl @@ -267,13 +267,14 @@ handle_call(_Request, _From, State) -> noreply(State). handle_cast({method, Method, Content, Flow}, - State = #ch{reader_pid = Reader}) -> + State = #ch{reader_pid = Reader, + virtual_host = VHost}) -> case Flow of flow -> credit_flow:ack(Reader); noflow -> ok end, try handle_method(rabbit_channel_interceptor:intercept_method( - expand_shortcuts(Method, State)), + expand_shortcuts(Method, State), VHost), Content, State) of {reply, Reply, NewState} -> ok = send(Reply, NewState), diff --git a/src/rabbit_channel_interceptor.erl b/src/rabbit_channel_interceptor.erl index 5d1665e0..636b0610 100644 --- a/src/rabbit_channel_interceptor.erl +++ b/src/rabbit_channel_interceptor.erl @@ -22,7 +22,7 @@ -include("rabbit_framing.hrl"). -include("rabbit.hrl"). --export([intercept_method/1]). +-export([intercept_method/2]). -ifdef(use_specs). @@ -51,15 +51,15 @@ behaviour_info(_Other) -> %%---------------------------------------------------------------------------- -intercept_method(#'basic.publish'{} = M) -> +intercept_method(#'basic.publish'{} = M, _VHost) -> M; -intercept_method(M) -> - intercept_method(M, select(rabbit_misc:method_record_type(M))). +intercept_method(M, VHost) -> + intercept_method(M, VHost, select(rabbit_misc:method_record_type(M))). -intercept_method(M, []) -> +intercept_method(M, _VHost, []) -> M; -intercept_method(M, [I]) -> - case I:intercept(M) of +intercept_method(M, VHost, [I]) -> + case I:intercept(M, VHost) of {ok, M2} -> case validate_method(M, M2) of true -> @@ -74,7 +74,7 @@ intercept_method(M, [I]) -> internal_error("Interceptor: ~p failed with reason: ~p", [I, Reason]) end; -intercept_method(M, Is) -> +intercept_method(M, _VHost, Is) -> internal_error("More than one interceptor for method: ~p -- ~p", [rabbit_misc:method_record_type(M), Is]). |