Relyra.SessionAdapter behaviour (relyra v1.1.0)

Copy Markdown View Source

Public extension contract for handing off authenticated subjects to host sessions.

Summary

Callbacks

establish_session(subject, context, opts)

@callback establish_session(subject :: map(), context :: map(), opts :: keyword()) ::
  {:ok, map() | Plug.Conn.t()} | {:error, Relyra.Error.t()}

revoke_session(subject, session_index, context, opts)

@callback revoke_session(
  subject :: map(),
  session_index :: binary() | nil,
  context :: map(),
  opts :: keyword()
) :: {:ok, term()} | {:error, Relyra.Error.t()}

Functions

establish_session(subject, context, opts \\ [])

@spec establish_session(map(), map(), keyword()) ::
  {:ok, map() | Plug.Conn.t()} | {:error, Relyra.Error.t()}

revoke_session(subject, session_index, context, opts \\ [])

@spec revoke_session(map(), binary() | nil, map(), keyword()) ::
  {:ok, term()} | {:error, Relyra.Error.t()}