Foundation.Retry.Config (foundation v0.2.1)

Copy Markdown View Source

User-facing retry configuration with sensible defaults.

Summary

Functions

Return the default retry configuration.

Build a retry configuration.

Convert to Retry.Handler options.

Validate a retry configuration, raising on invalid values.

Types

t()

@type t() :: %Foundation.Retry.Config{
  base_delay_ms: pos_integer(),
  enable_retry_logic: boolean(),
  jitter_pct: float(),
  max_connections: pos_integer(),
  max_delay_ms: pos_integer(),
  max_retries: non_neg_integer() | :infinity,
  progress_timeout_ms: pos_integer()
}

Functions

default()

@spec default() :: t()

Return the default retry configuration.

new(opts \\ [])

@spec new(keyword()) :: t()

Build a retry configuration.

to_handler_opts(config)

@spec to_handler_opts(t()) :: keyword()

Convert to Retry.Handler options.

validate!(config)

@spec validate!(t()) :: t()

Validate a retry configuration, raising on invalid values.