0
Fork 0
mirror of https://github.com/ninenines/cowboy.git synced 2025-07-14 12:20:24 +00:00

Update Ranch to 0.8.0

This commit is contained in:
Loïc Hoguin 2013-04-03 13:47:12 +02:00
parent ce1d8862c0
commit 2b56bb498f
6 changed files with 13 additions and 13 deletions

View file

@ -1,7 +1,7 @@
# See LICENSE for licensing information. # See LICENSE for licensing information.
PROJECT = cowboy PROJECT = cowboy
RANCH_VSN = 0.6.2 RANCH_VSN = 0.8.0
ERLC_OPTS ?= -Werror +debug_info +warn_export_all +warn_export_vars \ ERLC_OPTS ?= -Werror +debug_info +warn_export_all +warn_export_vars \
+warn_shadow_vars +warn_obsolete_guard # +bin_opt_info +warn_missing_spec +warn_shadow_vars +warn_obsolete_guard # +bin_opt_info +warn_missing_spec

View file

@ -14,7 +14,7 @@ defmodule ElixirHelloWorld.Mixfile do
end end
defp deps do defp deps do
[ {:ranch, github: "extend/ranch", tag: "0.6.2"}, [ {:ranch, github: "extend/ranch", tag: "0.8.0"},
{:cowboy, github: "extend/cowboy"} ] {:cowboy, github: "extend/cowboy"} ]
end end
end end

View file

@ -48,7 +48,7 @@ the routing information. It is a list of tuples with the first
element being an atom and the second any Erlang term. element being an atom and the second any Erlang term.
Two values in the environment are reserved: Two values in the environment are reserved:
* `listener` contains the pid of the listener process * `listener` contains the name of the listener
* `result` contains the result of the processing * `result` contains the result of the processing
The `listener` value is always defined. The `result` value can be The `listener` value is always defined. The `result` value can be

View file

@ -1,3 +1,3 @@
{deps, [ {deps, [
{ranch, ".*", {git, "git://github.com/extend/ranch.git", "0.6.2"}} {ranch, ".*", {git, "git://github.com/extend/ranch.git", "0.8.0"}}
]}. ]}.

View file

@ -84,9 +84,9 @@
%% API. %% API.
%% @doc Start an HTTP protocol process. %% @doc Start an HTTP protocol process.
-spec start_link(pid(), inet:socket(), module(), any()) -> {ok, pid()}. -spec start_link(any(), inet:socket(), module(), any()) -> {ok, pid()}.
start_link(ListenerPid, Socket, Transport, Opts) -> start_link(Ref, Socket, Transport, Opts) ->
Pid = spawn_link(?MODULE, init, [ListenerPid, Socket, Transport, Opts]), Pid = spawn_link(?MODULE, init, [Ref, Socket, Transport, Opts]),
{ok, Pid}. {ok, Pid}.
%% Internal. %% Internal.
@ -100,8 +100,8 @@ get_value(Key, Opts, Default) ->
end. end.
%% @private %% @private
-spec init(pid(), inet:socket(), module(), any()) -> ok. -spec init(any(), inet:socket(), module(), any()) -> ok.
init(ListenerPid, Socket, Transport, Opts) -> init(Ref, Socket, Transport, Opts) ->
Compress = get_value(compress, Opts, false), Compress = get_value(compress, Opts, false),
MaxEmptyLines = get_value(max_empty_lines, Opts, 5), MaxEmptyLines = get_value(max_empty_lines, Opts, 5),
MaxHeaderNameLength = get_value(max_header_name_length, Opts, 64), MaxHeaderNameLength = get_value(max_header_name_length, Opts, 64),
@ -110,11 +110,11 @@ init(ListenerPid, Socket, Transport, Opts) ->
MaxKeepalive = get_value(max_keepalive, Opts, 100), MaxKeepalive = get_value(max_keepalive, Opts, 100),
MaxRequestLineLength = get_value(max_request_line_length, Opts, 4096), MaxRequestLineLength = get_value(max_request_line_length, Opts, 4096),
Middlewares = get_value(middlewares, Opts, [cowboy_router, cowboy_handler]), Middlewares = get_value(middlewares, Opts, [cowboy_router, cowboy_handler]),
Env = [{listener, ListenerPid}|get_value(env, Opts, [])], Env = [{listener, Ref}|get_value(env, Opts, [])],
OnRequest = get_value(onrequest, Opts, undefined), OnRequest = get_value(onrequest, Opts, undefined),
OnResponse = get_value(onresponse, Opts, undefined), OnResponse = get_value(onresponse, Opts, undefined),
Timeout = get_value(timeout, Opts, 5000), Timeout = get_value(timeout, Opts, 5000),
ok = ranch:accept_ack(ListenerPid), ok = ranch:accept_ack(Ref),
wait_request(<<>>, #state{socket=Socket, transport=Transport, wait_request(<<>>, #state{socket=Socket, transport=Transport,
middlewares=Middlewares, compress=Compress, env=Env, middlewares=Middlewares, compress=Compress, env=Env,
max_empty_lines=MaxEmptyLines, max_keepalive=MaxKeepalive, max_empty_lines=MaxEmptyLines, max_keepalive=MaxKeepalive,

View file

@ -63,8 +63,8 @@
| {suspend, module(), atom(), [any()]} | {suspend, module(), atom(), [any()]}
when Req::cowboy_req:req(), Env::cowboy_middleware:env(). when Req::cowboy_req:req(), Env::cowboy_middleware:env().
upgrade(Req, Env, Handler, HandlerOpts) -> upgrade(Req, Env, Handler, HandlerOpts) ->
{_, ListenerPid} = lists:keyfind(listener, 1, Env), {_, Ref} = lists:keyfind(listener, 1, Env),
ranch_listener:remove_connection(ListenerPid), ranch:remove_connection(Ref),
[Socket, Transport] = cowboy_req:get([socket, transport], Req), [Socket, Transport] = cowboy_req:get([socket, transport], Req),
State = #state{env=Env, socket=Socket, transport=Transport, State = #state{env=Env, socket=Socket, transport=Transport,
handler=Handler, handler_opts=HandlerOpts}, handler=Handler, handler_opts=HandlerOpts},