Browse Source

1、 属性内部访问
2、getter/setter方法无需weak标记

Jack 5 years ago
parent
commit
359be81473

+ 3 - 3
Sources/Networking/ImageDownloader.swift

@@ -166,9 +166,9 @@ open class ImageDownloader {
     }
     }
     
     
     /// You could set the extra handler before a downloading task starts.
     /// You could set the extra handler before a downloading task starts.
-    public weak var extraSessionDelegateHandler:URLSessionDataDelegate? {
-        set {sessionDelegate.setExtraHandler(newValue)}
-        get {return sessionDelegate.getExtraHandler()}
+    public var extraSessionDelegateHandler:URLSessionDataDelegate? {
+        set {sessionDelegate.extraHandler = newValue}
+        get {return sessionDelegate.extraHandler}
     }
     }
     
     
     deinit { session.invalidateAndCancel() }
     deinit { session.invalidateAndCancel() }

+ 1 - 9
Sources/Networking/SessionDelegate.swift

@@ -45,7 +45,7 @@ class SessionDelegate: NSObject {
 
 
     private var tasks: [URL: SessionDataTask] = [:]
     private var tasks: [URL: SessionDataTask] = [:]
     private let lock = NSLock()
     private let lock = NSLock()
-    private weak var extraHandler: URLSessionDataDelegate?
+    weak var extraHandler: URLSessionDataDelegate?
 
 
     let onValidStatusCode = Delegate<Int, Bool>()
     let onValidStatusCode = Delegate<Int, Bool>()
     let onDownloadingFinished = Delegate<(URL, Result<URLResponse, KingfisherError>), Void>()
     let onDownloadingFinished = Delegate<(URL, Result<URLResponse, KingfisherError>), Void>()
@@ -147,14 +147,6 @@ class SessionDelegate: NSObject {
         task?.forceCancel()
         task?.forceCancel()
     }
     }
     
     
-    /// You could set the extra handler before a downloading task starts.
-    func setExtraHandler(_ handler: URLSessionDataDelegate?) {
-        extraHandler = handler
-    }
-    func getExtraHandler() -> URLSessionDataDelegate? {
-        return extraHandler
-    }
-    
 }
 }
 
 
 extension SessionDelegate: URLSessionDataDelegate {
 extension SessionDelegate: URLSessionDataDelegate {