Explorar o código

[Issue #721] Reverted respondsToSelector override removal in SessionDelegate.

Christian Noon %!s(int64=10) %!d(string=hai) anos
pai
achega
a9480269ac
Modificáronse 1 ficheiros con 21 adicións e 0 borrados
  1. 21 0
      Source/Manager.swift

+ 21 - 0
Source/Manager.swift

@@ -645,5 +645,26 @@ public class Manager {
         var _streamTaskWriteClosed: Any?
         var _streamTaskBetterRouteDiscovered: Any?
         var _streamTaskDidBecomeInputStream: Any?
+
+        // MARK: - NSObject
+
+        public override func respondsToSelector(selector: Selector) -> Bool {
+            switch selector {
+            case "URLSession:didBecomeInvalidWithError:":
+                return (self.sessionDidBecomeInvalidWithError != nil)
+            case "URLSession:didReceiveChallenge:completionHandler:":
+                return (self.sessionDidReceiveChallenge != nil)
+            case "URLSessionDidFinishEventsForBackgroundURLSession:":
+                return (self.sessionDidFinishEventsForBackgroundURLSession != nil)
+            case "URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:":
+                return (self.taskWillPerformHTTPRedirection != nil)
+            case "URLSession:dataTask:didReceiveResponse:completionHandler:":
+                return (self.dataTaskDidReceiveResponse != nil)
+            case "URLSession:dataTask:willCacheResponse:completionHandler:":
+                return (self.dataTaskWillCacheResponse != nil)
+            default:
+                return self.dynamicType.instancesRespondToSelector(selector)
+            }
+        }
     }
 }