View Source Errata.InfrastructureError (Errata v1.0.0)

Infrastructure errors represent errors that can occur at an infrastructure level but which are not part of the problem domain.

Infrastructure errors include such things as network timeouts, database connection failures, and filesystem errors. Unlike domain errors, they are not part of the problem domain and so are not typically part of the Ubiquitous Language of the domain.

Define an infrastructure error by creating a module that uses Errata.InfrastructureError. The resulting type is an Errata.Error of kind :infrastructure: it shares the common structure of all Errata errors and supports every callback of the Errata.Error behaviour. See Errata.Error for the full set of options and callbacks.

Usage

To define a new custom infrastructure error type, use/2 the Errata.InfrastructureError module in your own error module:

defmodule MyApp.Orders.PaymentGatewayTimeout do
  use Errata.InfrastructureError,
    default_message: "the payment gateway timed out"
end

Summary

Types

t()

Type to represent Errata infrastructure errors.

Types

Type to represent Errata infrastructure errors.