blob: 30af485f2ae320e58971cc4d59fbeb8ef5bc6a52 (
plain) (
tree)
|
|
= cowboy:set_env(3)
== Name
cowboy:set_env - Update a listener's environment value
== Description
[source,erlang]
----
set_env(Name :: ranch:ref(),
Key :: atom(),
Value :: any())
-> ok
----
Set or update an environment value for a previously started
listener.
This is most useful for updating the routes dynamically,
without having to restart the listener.
The new value will only be available to new connections.
Pre-existing connections will still use the old value.
== Arguments
Name::
The name of the listener to update.
+
The name of the listener is the first argument given to the
link:man:cowboy:start_clear(3)[cowboy:start_clear(3)],
link:man:cowboy:start_tls(3)[cowboy:start_tls(3)] or
link:man:ranch:start_listener(3)[ranch:start_listener(3)] function.
Key::
The key in the environment map. Common keys include `dispatch`
and `middlewares`.
Value::
The new value.
+
The type of the value differs depending on the key.
== Return value
The atom `ok` is returned on success.
An `exit:badarg` exception is thrown when the listener does
not exist.
== Changelog
* *1.0*: Function introduced.
== Examples
.Update a listener's routes
[source,erlang]
----
Dispatch = cowboy_router:compile([
{'_', [
{"/", toppage_h, []},
{"/ws", websocket_h, []}
]}
]),
cowboy:set_env(example, dispatch, Dispatch).
----
== See also
link:man:cowboy(3)[cowboy(3)],
link:man:cowboy:start_clear(3)[cowboy:start_clear(3)],
link:man:cowboy:start_tls(3)[cowboy:start_tls(3)],
link:man:ranch:set_protocol_options(3)[ranch:set_protocol_options(3)]
|