Xirsys.Sockets.Handler behaviour (xturn_sockets v2.0.0)

View Source

Business logic callback for a single framing tier.

Summary

Types

meta()

@type meta() :: map()

state()

@type state() :: term()

Callbacks

handle_connect(t)

(optional)
@callback handle_connect(Xirsys.Sockets.Conn.t()) :: {:ok, state()}

handle_disconnect(term, state)

(optional)
@callback handle_disconnect(term(), state()) :: :ok

handle_packet(binary, meta, t, state)

@callback handle_packet(binary(), meta(), Xirsys.Sockets.Conn.t(), state()) ::
  {:ok, state()}
  | {:reply, iodata(), state()}
  | {:descend, atom(), binary(), state()}
  | {:close, state()}