Files
wanderer/lib/wanderer_app/utils/http_util.ex
2025-03-04 11:13:59 +04:00

19 lines
656 B
Elixir

defmodule WandererApp.Utils.HttpUtil do
@moduledoc """
Utility functions for HTTP operations and error handling.
"""
@doc """
Determines if an HTTP error is retriable.
Returns `true` for common transient errors like timeouts and server errors (500, 502, 503, 504).
"""
def retriable_error?(:timeout), do: true
def retriable_error?("Unexpected status: 500"), do: true
def retriable_error?("Unexpected status: 502"), do: true
def retriable_error?("Unexpected status: 503"), do: true
def retriable_error?("Unexpected status: 504"), do: true
def retriable_error?("Request failed"), do: true
def retriable_error?(_), do: false
end