clearCachedMetaData method
Implementation
Future<bool> clearCachedMetaData(String classId) async {
classId = _trimClassId(classId);
_pausedClassIds.remove(classId);
_pauseRequestedForClassId.remove(classId);
_cachedProgressCurrentBytes.remove(classId);
_cachedProgressTotalBytes.remove(classId);
final cacheDir = await _ensureCacheDir();
final safeId = _safeId(classId);
final cachingPath = p.join(cacheDir.path, '$safeId.json');
final cachedSuccessPath = p.join(cacheDir.path, '$safeId-success.json');
final cachedFailedPath = p.join(cacheDir.path, '$safeId-failed.json');
final onlineMetaCachePath = p.join(
cacheDir.path,
'$safeId-online-meta-cache.json',
);
final classCacheDir = Directory(p.join(cacheDir.path, safeId));
try {
if (await File(cachingPath).exists()) await File(cachingPath).delete();
if (await File(cachedSuccessPath).exists()) {
await File(cachedSuccessPath).delete();
}
if (await File(cachedFailedPath).exists()) {
await File(cachedFailedPath).delete();
}
if (await File(onlineMetaCachePath).exists()) {
await File(onlineMetaCachePath).delete();
}
if (await classCacheDir.exists()) {
await classCacheDir.delete(recursive: true);
}
} catch (_) {}
return true;
}