// `data`-yı `file` adlı fayla yazır.
func writeData(_ data: Data, to file: String) {
let documentDirectoryURL = FileManager.default.urls(for:
.documentDirectory, in: .userDomainMask).first!
let fileURL = documentDirectoryURL.appendingPathComponent(file)
try? data.write(to: fileURL)
}
// `file` adlı faylı silir.
func remove(file: String) {
let documentDirectoryURL = FileManager.default.urls(for:
.documentDirectory, in: .userDomainMask).first!
let fileURL = documentDirectoryURL.appendingPathComponent(file)
try? FileManager.default.removeItem(at: fileURL)
}
// `file` adlı fayldan `Data` oxuyur. Fayl mövcud deyilsə, `nil` qaytarır.
func readData(from file: String) -> Data? {
let documentDirectoryURL = FileManager.default.urls(for:
.documentDirectory, in: .userDomainMask).first!
let fileURL = documentDirectoryURL.appendingPathComponent(file)
return try? Data(contentsOf: fileURL)
}
final class DiskCache<T>: CacheProtocol {
func setValue(_ value: T?, forKey key: String) {
}
func getValue(forKey key: String) -> T? {
}
func fetchValue(forKey key: String, completion: @escaping (T?) -> Void) {
}
}