aboutsummaryrefslogtreecommitdiffstats
path: root/doc/src/manual/cowboy_sub_protocol.ezdoc
diff options
context:
space:
mode:
Diffstat (limited to 'doc/src/manual/cowboy_sub_protocol.ezdoc')
-rw-r--r--doc/src/manual/cowboy_sub_protocol.ezdoc32
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/src/manual/cowboy_sub_protocol.ezdoc b/doc/src/manual/cowboy_sub_protocol.ezdoc
new file mode 100644
index 0000000..2ad0cf7
--- /dev/null
+++ b/doc/src/manual/cowboy_sub_protocol.ezdoc
@@ -0,0 +1,32 @@
+::: cowboy_sub_protocol
+
+The `cowboy_sub_protocol` behaviour defines the interface used
+by modules that implement a protocol on top of HTTP.
+
+:: Types
+
+None.
+
+:: Callbacks
+
+: upgrade(Req, Env, Handler, Opts)
+ -> {ok, Req, Env}
+ | {suspend, Module, Function, Args}
+ | {halt, Req}
+ | {error, StatusCode, Req}
+
+Types:
+
+* Req = cowboy_req:req()
+* Env = env()
+* Handler = module()
+* Opts = any()
+* Module = module()
+* Function = atom()
+* Args = [any()]
+* StatusCode = cowboy:http_status()
+
+Upgrade the protocol.
+
+Please refer to the `cowboy_middleware` manual for a
+description of the return values.