API Reference Thousand Island v0.4.6
Modules
Provides a high-level interface for starting and managing Thousand Island server
instances. Server instances exist as a process tree, which is usually started
by starting this module's child spec within an existing supervision tree,
or by calling start_link/1
directly.
ThousandIsland.Handler
defines the behaviour required of the application layer of a Thousand Island server. When starting a
Thousand Island server, you must pass the name of a module implementing this behaviour as the handler_module
parameter.
Thousand Island will then use the specified module to handle each connection that is made to the server.
Allows dynamically adding and altering the log level used to trace connections
within a Thousand Island server via the use of telemetry hooks. Should you wish
to do your own logging or tracking of these events, a complete list of the
telemetry events emitted by Thousand Island is described in the module
documentation for ThousandIsland
.
Encapsulates a client connection's underlying socket, providing a facility to read, write, and otherwise manipulate a connection from a client.
This module describes the behaviour required for Thousand Island to interact
with low-level sockets. It is largely internal to Thousand Island, however users
are free to implement their own versions of this behaviour backed by whatever
underlying transport they choose. Such a module can be used in Thousand Island
by passing its name as the transport_module
option when starting up a server,
as described in ThousandIsland
.
Defines a ThousandIsland.Transport
implementation based on TCP SSL sockets
as provided by Erlang's :ssl
module. For the most part, users of Thousand
Island will only ever need to deal with this module via transport_options
passed to ThousandIsland
at startup time. A complete list of such options
is defined via the t::ssl.tls_server_option
type. This list can be somewhat
difficult to decipher; a list of the most common options follows
Defines a ThousandIsland.Transport
implementation based on clear TCP sockets
as provided by Erlang's :gen_tcp
module. For the most part, users of Thousand
Island will only ever need to deal with this module via transport_options
passed to ThousandIsland
at startup time. A complete list of such options
is defined via the t::gen_tcp.listen_option()
type. This list can be somewhat
difficult to decipher; by far the most common value to pass to this transport
is the following