Make cached response data return optional

This commit is contained in:
Kevin Wolkober 2016-06-13 18:54:58 +08:00
parent 3e6e64b1ea
commit 0d9cd03bd5
2 changed files with 7 additions and 4 deletions

View File

@ -15,7 +15,7 @@ public protocol SKImageCacheable: SKCacheable {
}
public protocol SKRequestResponseCacheable: SKCacheable {
func cachedResponseForRequest(request: NSURLRequest) -> NSCachedURLResponse
func cachedResponseForRequest(request: NSURLRequest) -> NSCachedURLResponse?
func storeCachedResponse(cachedResponse: NSCachedURLResponse, forRequest request: NSURLRequest)
}

View File

@ -30,10 +30,13 @@ public class SKCache {
}
public func imageForRequest(request: NSURLRequest) -> UIImage? {
let response = (self.imageCache as! SKRequestResponseCacheable).cachedResponseForRequest(request)
let data = response.data
if let response = (self.imageCache as! SKRequestResponseCacheable).cachedResponseForRequest(request) {
let data = response.data
return UIImage(data: data)
return UIImage(data: data)
}
return nil
}
public func setImageData(data: NSData, response: NSURLResponse, request: NSURLRequest) {