From 9fe8141d2a80b6e60a716bc4c318d8929195c808 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Hoguin?= Date: Tue, 22 Mar 2011 23:03:43 +0100 Subject: Allow Handler:init/3 to request a protocol upgrade. --- src/cowboy_http_protocol.erl | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/cowboy_http_protocol.erl b/src/cowboy_http_protocol.erl index d950373..d9fa04b 100644 --- a/src/cowboy_http_protocol.erl +++ b/src/cowboy_http_protocol.erl @@ -135,7 +135,9 @@ handler_init(Req, State=#state{ case catch Handler:init({Transport:name(), http}, Req, Opts) of {ok, Req, HandlerState} -> handler_loop(HandlerState, Req, State); - %% @todo {upgrade, transport, Module}; {upgrade, protocol, Module} + %% @todo {upgrade, transport, Module} + {upgrade, protocol, Module} -> + Module:upgrade(Handler, Opts, Req); {'EXIT', _Reason} -> error_terminate(500, State) end. -- cgit v1.2.3