aboutsummaryrefslogtreecommitdiffstats
path: root/src/gun_spdy.erl
diff options
context:
space:
mode:
authorLoïc Hoguin <[email protected]>2015-04-08 23:34:08 +0300
committerLoïc Hoguin <[email protected]>2015-04-08 23:34:08 +0300
commit8366ba94bb9e450221a246acdd482c0162affcd9 (patch)
tree5797de02c7f00760d50136c33502eaee654378dd /src/gun_spdy.erl
parent335eb50a06c574fb9dfb50cac6185aa18e8c3834 (diff)
downloadgun-8366ba94bb9e450221a246acdd482c0162affcd9.tar.gz
gun-8366ba94bb9e450221a246acdd482c0162affcd9.tar.bz2
gun-8366ba94bb9e450221a246acdd482c0162affcd9.zip
Use maps for and improve options
The type option has been removed. The transport and protocols options can be used in its place. The transport_opts option can be used to specify transport options. The http_opts and spdy_opts options can be used to specify protocol specific options. The keepalive option is now a protocol specific option. Defaults depending on the port number have changed. Now only port 443 uses ssl by default, other ports use tcp.
Diffstat (limited to 'src/gun_spdy.erl')
-rw-r--r--src/gun_spdy.erl11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/gun_spdy.erl b/src/gun_spdy.erl
index 7651584..ee61659 100644
--- a/src/gun_spdy.erl
+++ b/src/gun_spdy.erl
@@ -14,6 +14,7 @@
-module(gun_spdy).
+-export([check_options/1]).
-export([init/4]).
-export([handle/2]).
-export([close/1]).
@@ -43,7 +44,15 @@
ping_id = 1 :: non_neg_integer()
}).
-init(Owner, Socket, Transport, []) ->
+check_options(Opts) ->
+ do_check_options(map:to_list(Opts)).
+
+do_check_options([{keepalive, K}|Opts]) when is_integer(K), K > 0 ->
+ do_check_options(Opts);
+do_check_options([Opt|_]) ->
+ {error, {options, {spdy, Opt}}}.
+
+init(Owner, Socket, Transport, _Opts) ->
#spdy_state{owner=Owner, socket=Socket, transport=Transport,
zdef=cow_spdy:deflate_init(), zinf=cow_spdy:inflate_init()}.