Proyectos de Subversion Iphone Microlearning - Inconcert

Rev

| Ultima modificación | Ver Log |

Rev Autor Línea Nro. Línea
1 efrain 1
//
2
//  ImageCache.swift
3
//  twogetskills
4
//
5
//  Created by Efrain Yanez Recanatini on 3/9/22.
6
//
7
 
8
import DataCache
9
 
10
class ImageCache {
11
 
12
    public let cache :  DataCache
13
 
14
    static let sharedInstance: ImageCache = {
15
           let instance = ImageCache()
16
 
17
           // setup code
18
           return instance
19
    }()
20
 
21
    init() {
22
        cache = DataCache(name: "2GetSkillsCustomCache")
23
        cache.maxDiskCacheSize = 600*1024*1024      // 100 MB
24
        cache.maxCachePeriodInSecond = 7*86400      // 1 week
25
    }
26
 
27
 
28
 
29
 
30
 
31
}
32
 
33
//import UIKit
34
 
35
/*
36
protocol ImageCache {
37
    subscript(_ key: NSString) -> UIImage? { get set }
38
}
39
 
40
struct TemporaryImageCache: ImageCache {
41
    subscript(key: NSString) -> UIImage? {
42
        get {
43
            cache.object(forKey: key as NSString)
44
        }
45
        set {
46
            newValue == nil ? cache.removeObject(forKey: key as NSString) : cache.setObject(newValue!, forKey: key as NSString)
47
        }
48
    }
49
 
50
    private let cache: NSCache<NSString, UIImage> = {
51
        let cache = NSCache<NSString, UIImage>()
52
 
53
        cache.countLimit = 100 // 100 items
54
        cache.totalCostLimit = 1024 * 1024 * 600 // 600 MB
55
        return cache
56
    }()
57
}
58
 */