49 lines
789 B
Elixir
49 lines
789 B
Elixir
defmodule Podbox.Download.HttpError do
|
|
@moduledoc """
|
|
# #{inspect(__MODULE__)}
|
|
|
|
An HTTP error occurred while performing the request.
|
|
"""
|
|
|
|
use Splode.Error, fields: [:asset, :error, :method, :uri], class: :download
|
|
|
|
def message(error) when is_exception(error.error) do
|
|
inner_error =
|
|
error.error
|
|
|> Exception.message()
|
|
|> String.split("\n")
|
|
|> Enum.map_join("\n", &" #{&1}")
|
|
|
|
"""
|
|
#{@moduledoc}
|
|
|
|
## URI
|
|
|
|
#{error.uri}
|
|
|
|
## Error
|
|
|
|
#{inner_error}
|
|
"""
|
|
end
|
|
|
|
def message(error) do
|
|
inner_error =
|
|
error.error
|
|
|> inspect()
|
|
|> String.split("\n")
|
|
|> Enum.map_join("\n", &" #{&1}")
|
|
|
|
"""
|
|
#{@moduledoc}
|
|
|
|
## URI
|
|
|
|
#{error.uri}
|
|
|
|
## Error
|
|
|
|
#{inner_error}
|
|
"""
|
|
end
|
|
end
|