class

ArrTop::RadarrBackend

Inherits ArrTop::Backend < Reference < Object

Backend backed by the radarr shard. Wraps a Radarr::Client and maps Radarr's queue records onto normalized QueueRows. The queue is movie-based, so media_kind is :movie and dest_folder comes from the embedded movie's path.

Network errors are not swallowed: a failed Radarr request raises Radarr::ApiError for the caller (the Poller) to handle.

Constants

QUEUE_PAGE_SIZE = 100

Page size used when walking the (paged) queue endpoint.

Constructors

new(name : String, url : String, api_key : String)
Source

Class methods

map_row(record : Radarr::Model::QueueResource, backend_name : String) : QueueRow

Pure mapping seam: turns a Radarr queue record into a QueueRow.

Source
to_i64(value : Float64 | Nil) : Int64

Converts the shard's Float64? byte counts to Int64 (nil → 0).

Source
warning?(status : Radarr::TrackedDownloadStatus | Nil) : Bool

True when the tracked download status signals a warning or error.

Source

Instance methods

name

Human-readable backend name (from config).

Source
rows

Fetches the full queue, following paging until every record is collected. include_movie: true so movie.path is available for dest_folder.

Source