Browse Source

Add documentation for cowboy_spdy

Loïc Hoguin 11 years ago
parent
commit
119d52295f
3 changed files with 55 additions and 5 deletions
  1. 11 0
      manual/cowboy.md
  2. 40 0
      manual/cowboy_spdy.md
  3. 4 5
      src/cowboy_spdy.erl

+ 11 - 0
manual/cowboy.md

@@ -65,6 +65,17 @@ Exports
 > Start listening for HTTPS connections. Returns the pid for this
 > listener's supervisor.
 
+### start_spdy(Ref, NbAcceptors, TransOpts, ProtoOpts) -> {ok, pid()}
+
+> Types:
+>  *  Ref = ranch:ref()
+>  *  NbAcceptors = non_neg_integer()
+>  *  TransOpts = ranch_ssl:opts()
+>  *  ProtoOpts = cowboy_spdy:opts()
+>
+> Start listening for SPDY connections. Returns the pid for this
+> listener's supervisor.
+
 ### stop_listener(Ref) -> ok
 
 > Types:

+ 40 - 0
manual/cowboy_spdy.md

@@ -0,0 +1,40 @@
+cowboy_spdy
+===========
+
+The `cowboy_spdy` module implements SPDY/3 as a Ranch protocol.
+
+Types
+-----
+
+### opts() = [{env, cowboy_middleware:env()}
+	| {middlewares, [module()]}
+	| {onrequest, cowboy:onrequest_fun()}
+	| {onresponse, cowboy:onresponse_fun()}]
+
+> Configuration for the SPDY protocol handler.
+>
+> This configuration is passed to Cowboy when starting listeners
+> using the `cowboy:start_spdy/4` function.
+>
+> It can be updated without restarting listeners using the
+> Ranch functions `ranch:get_protocol_options/1` and
+> `ranch:set_protocol_options/2`.
+
+Option descriptions
+-------------------
+
+The default value is given next to the option name.
+
+ -  env ([{listener, Ref}])
+   -  Initial middleware environment.
+ -  middlewares ([cowboy_router, cowboy_handler])
+   -  List of middlewares to execute for every requests.
+ -  onrequest (undefined)
+   -  Fun called every time a request is received.
+ -  onresponse (undefined)
+   -  Fun called every time a response is sent.
+
+Exports
+-------
+
+None.

+ 4 - 5
src/cowboy_spdy.erl

@@ -14,10 +14,6 @@
 
 %% @doc SPDY protocol handler.
 %%
-%% The available options are:
-%% <dl>
-%% </dl>
-%%
 %% Note that there is no need to monitor these processes when using Cowboy as
 %% an application as it already supervises them under the listener supervisor.
 -module(cowboy_spdy).
@@ -71,7 +67,10 @@
 	children = [] :: [#child{}]
 }).
 
--type opts() :: [].
+-type opts() :: [{env, cowboy_middleware:env()}
+	| {middlewares, [module()]}
+	| {onrequest, cowboy:onrequest_fun()}
+	| {onresponse, cowboy:onresponse_fun()}].
 -export_type([opts/0]).
 
 %% API.