recoverableRegions property

Future<Iterable<({bool isFailed, RecoveredRegion region})>> recoverableRegions

List all recoverable regions, and whether each one has failed

Result can be filtered to only include failed downloads using the FMTCRecoveryGetFailedExts.failedOnly extension.

A failed download is one that was found in the recovery database, but not in the application memory. It can therefore be assumed that the download is also no longer in memory, and was therefore stopped unexpectedly, for example after a fatal crash.

Implementation

Future<Iterable<({bool isFailed, RecoveredRegion region})>>
    get recoverableRegions async =>
        FMTCBackendAccess.internal.listRecoverableRegions().then(
              (rs) => rs.map(
                (r) =>
                    (isFailed: !_downloadsOngoing.contains(r.id), region: r),
              ),
            );