Current section
Files
Jump to
Current section
Files
lib/kiln/responses/error_response.ex
defmodule Kiln.Responses.ErrorResponse do
alias Kiln.Responses.{ErrorDetails, ErrorResponse}
defstruct [:code, :kind, :summary, :errors]
def forbidden() do
%ErrorResponse{
code: 403,
kind: "forbidden",
summary: "forbidden",
errors: nil
}
end
def not_found() do
%ErrorResponse{
code: 404,
kind: "not-found",
summary: "not found",
errors: nil
}
end
def not_allowed() do
%ErrorResponse{
code: 405,
kind: "not-allowed",
summary: "method not allowed",
errors: nil
}
end
def gone() do
%ErrorResponse{
code: 410,
kind: "gone",
summary: "gone",
errors: nil
}
end
def unprocessable(details) do
%ErrorResponse{
code: 422,
kind: "unprocessable",
summary: "unprocessable",
errors: ErrorDetails.parse(details)
}
end
def unknown() do
%ErrorResponse{
code: 500,
kind: "unknown",
summary: "unknown error",
errors: nil
}
end
end