Fixed media provider performance.

This commit is contained in:
Stefan Ceriu
2022-04-01 10:03:40 +03:00
parent 49f7678ce8
commit 77942b3dc0
@@ -30,11 +30,16 @@ struct MediaProvider: MediaProviderProtocol {
} }
func loadImageFromURL(_ url: String, _ completion: @escaping (Result<UIImage, MediaProviderError>) -> Void) { func loadImageFromURL(_ url: String, _ completion: @escaping (Result<UIImage, MediaProviderError>) -> Void) {
if let image = imageForURL(url) {
completion(.success(image))
return
}
imageCache.retrieveImage(forKey: url) { result in imageCache.retrieveImage(forKey: url) { result in
if case let .success(cacheResult) = result, if case let .success(cacheResult) = result,
let image = cacheResult.image { let image = cacheResult.image {
completion(.success(image)) completion(.success(image))
} return
} }
processingQueue.async { processingQueue.async {
@@ -62,4 +67,5 @@ struct MediaProvider: MediaProviderProtocol {
} }
} }
} }
}
} }