Packages
x3m_system
0.7.17
0.9.1
0.9.0
0.8.6
0.8.5
0.8.4
0.8.3
0.8.2
0.8.1
0.8.0
retired
0.7.20
0.7.19
0.7.18
0.7.17
0.7.16
0.7.15
0.7.14
0.7.13
0.7.12
0.7.11
0.7.10
0.7.9
0.7.8
retired
0.7.7
0.7.6
retired
0.7.5
0.7.4
retired
0.7.3
retired
0.7.2
0.7.1
0.7.0
0.6.4
0.6.3
0.6.2
0.6.1
0.6.0
retired
0.5.6
0.5.5
0.5.4
0.5.3
0.5.2
0.5.1
0.5.0
0.4.9
0.4.8
0.4.7
0.4.6
0.4.5
0.4.4
0.4.3
0.4.2
0.4.1
0.4.0
0.1.1
0.1.0
Building blocks for distributed and/or CQRS/ES systems
Current section
Files
Jump to
Current section
Files
lib/response.ex
defmodule X3m.System.Response do
@type t ::
:ok
| {:ok, any}
| {:ok, any, integer}
| {:created, any}
| {:created, any, integer}
| {:service_unavailable, atom}
| {:service_timeout, atom, String.t(), non_neg_integer}
| {:validation_error, map}
| {:missing_id, atom | String.t()}
| {:error, any}
@spec ok() :: :ok
def ok, do: :ok
@spec ok(any) :: {:ok, any}
def ok(payload), do: {:ok, payload}
@spec created(any) :: {:created, any}
def created(id), do: {:created, id}
@spec service_unavailable(atom) :: {:service_unavailable, atom}
def service_unavailable(msg_name), do: {:service_unavailable, msg_name}
@spec service_timeout(atom, String.t(), non_neg_integer) ::
{:service_timeout, atom, String.t(), non_neg_integer}
def service_timeout(msg_name, req_id, timeout),
do: {:service_timeout, msg_name, req_id, timeout}
@spec unauthorized(String.t()) :: {:unauthorized, String.t()}
def unauthorized(msg), do: {:unauthorized, msg}
@spec validation_error(map) :: {:validation_error, map}
def validation_error(request),
do: {:validation_error, request}
@spec missing_id(atom | String.t()) :: {:missing_id, atom | String.t()}
def missing_id(id_field),
do: {:missing_id, id_field}
@spec error(any) :: {:error, any}
def error(any),
do: {:error, any}
end