diff --git a/CHANGELOG.md b/CHANGELOG.md index a8daae70..edaa010f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,7 +5,9 @@ * Added `hasFormBody(_:)` matcher. [@417-72KI](https://github.com/417-72KI) * Added fix for Xcode 12 - Warnings related to iOS 8 support (Swift Package Manager) #328 -[@kikeenrique](https://github.com/kikeenrique) +[@kikeenrique](https://github.com/kikeenrique) +* Removed all references of `UIWebView` [#347](https://github.com/AliSoftware/OHHTTPStubs/pull/347) +[@arnold-plakolli](https://github.com/arnold-plakolli) ## [9.0.0](https://github.com/AliSoftware/OHHTTPStubs/releases/tag/9.0.0) diff --git a/OHHTTPStubs.xcodeproj/project.pbxproj b/OHHTTPStubs.xcodeproj/project.pbxproj index ac4e60a5..da15f668 100644 --- a/OHHTTPStubs.xcodeproj/project.pbxproj +++ b/OHHTTPStubs.xcodeproj/project.pbxproj @@ -1206,8 +1206,8 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.9; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MACOSX_DEPLOYMENT_TARGET = 10.10; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; SWIFT_SWIFT3_OBJC_INFERENCE = Default; @@ -1261,8 +1261,8 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.9; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MACOSX_DEPLOYMENT_TARGET = 10.10; SDKROOT = iphoneos; SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; SWIFT_SWIFT3_OBJC_INFERENCE = Default; @@ -1277,7 +1277,7 @@ isa = XCBuildConfiguration; buildSettings = { DSTROOT = /tmp/OHHTTPStubs.dst; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; OTHER_LDFLAGS = "-ObjC"; PRODUCT_NAME = OHHTTPStubs; SKIP_INSTALL = YES; @@ -1288,7 +1288,7 @@ isa = XCBuildConfiguration; buildSettings = { DSTROOT = /tmp/OHHTTPStubs.dst; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; OTHER_LDFLAGS = "-ObjC"; PRODUCT_NAME = OHHTTPStubs; SKIP_INSTALL = YES; @@ -1306,7 +1306,7 @@ "OHHTTPSTUBS_USE_STATIC_LIBRARY=1", ); INFOPLIST_FILE = "Tests/Supporting Files/UnitTests-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", @@ -1329,7 +1329,7 @@ "OHHTTPSTUBS_USE_STATIC_LIBRARY=1", ); INFOPLIST_FILE = "Tests/Supporting Files/UnitTests-Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; OTHER_LDFLAGS = ( "$(inherited)", "-ObjC", diff --git a/Podfile b/Podfile index 9c276ade..521dda3b 100644 --- a/Podfile +++ b/Podfile @@ -4,18 +4,18 @@ project 'OHHTTPStubs.xcodeproj' inhibit_all_warnings! abstract_target 'TestingPods' do - pod 'AFNetworking', '~> 3.0' + pod 'AFNetworking', '~> 4.0' target 'OHHTTPStubs iOS Lib Tests' do - platform :ios, '8.0' + platform :ios, '9.0' end target 'OHHTTPStubs iOS Fmk Tests' do - platform :ios, '8.0' + platform :ios, '9.0' end target 'OHHTTPStubs Mac Tests' do - platform :osx, '10.9' + platform :osx, '10.10' end target 'OHHTTPStubs tvOS Fmk Tests' do diff --git a/Podfile.lock b/Podfile.lock index 33679d72..61a55306 100644 --- a/Podfile.lock +++ b/Podfile.lock @@ -1,30 +1,30 @@ PODS: - - AFNetworking (3.0.4): - - AFNetworking/NSURLSession (= 3.0.4) - - AFNetworking/Reachability (= 3.0.4) - - AFNetworking/Security (= 3.0.4) - - AFNetworking/Serialization (= 3.0.4) - - AFNetworking/UIKit (= 3.0.4) - - AFNetworking/NSURLSession (3.0.4): + - AFNetworking (4.0.1): + - AFNetworking/NSURLSession (= 4.0.1) + - AFNetworking/Reachability (= 4.0.1) + - AFNetworking/Security (= 4.0.1) + - AFNetworking/Serialization (= 4.0.1) + - AFNetworking/UIKit (= 4.0.1) + - AFNetworking/NSURLSession (4.0.1): - AFNetworking/Reachability - AFNetworking/Security - AFNetworking/Serialization - - AFNetworking/Reachability (3.0.4) - - AFNetworking/Security (3.0.4) - - AFNetworking/Serialization (3.0.4) - - AFNetworking/UIKit (3.0.4): + - AFNetworking/Reachability (4.0.1) + - AFNetworking/Security (4.0.1) + - AFNetworking/Serialization (4.0.1) + - AFNetworking/UIKit (4.0.1): - AFNetworking/NSURLSession DEPENDENCIES: - - AFNetworking (~> 3.0) + - AFNetworking (~> 4.0) SPEC REPOS: - https://github.com/cocoapods/specs.git: + https://github.com/cocoapods/Specs.git: - AFNetworking SPEC CHECKSUMS: - AFNetworking: a0075feb321559dc78d9d85b55d11caa19eabb93 + AFNetworking: 7864c38297c79aaca1500c33288e429c3451fdce -PODFILE CHECKSUM: 8d0eff399cf1d98e2ff7220113aed7a0d13ff37d +PODFILE CHECKSUM: 0d344df7f3ab5977942e66fc9ddb7085576dd565 -COCOAPODS: 1.6.0.beta.2 +COCOAPODS: 1.10.1 diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIImage+AFNetworking.h b/Pods/AFNetworking/AFNetworking/AFCompatibilityMacros.h similarity index 50% rename from Pods/AFNetworking/UIKit+AFNetworking/UIImage+AFNetworking.h rename to Pods/AFNetworking/AFNetworking/AFCompatibilityMacros.h index 14744cdd..1f0ab26d 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIImage+AFNetworking.h +++ b/Pods/AFNetworking/AFNetworking/AFCompatibilityMacros.h @@ -1,8 +1,5 @@ -// -// UIImage+AFNetworking.h -// -// -// Created by Paulo Ferreira on 08/07/15. +// AFCompatibilityMacros.h +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -22,14 +19,31 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. -#if TARGET_OS_IOS || TARGET_OS_TV - -#import +#ifndef AFCompatibilityMacros_h +#define AFCompatibilityMacros_h -@interface UIImage (AFNetworking) +#ifdef API_AVAILABLE + #define AF_API_AVAILABLE(...) API_AVAILABLE(__VA_ARGS__) +#else + #define AF_API_AVAILABLE(...) +#endif // API_AVAILABLE -+ (UIImage*) safeImageWithData:(NSData*)data; +#ifdef API_UNAVAILABLE + #define AF_API_UNAVAILABLE(...) API_UNAVAILABLE(__VA_ARGS__) +#else + #define AF_API_UNAVAILABLE(...) +#endif // API_UNAVAILABLE -@end +#if __has_warning("-Wunguarded-availability-new") + #define AF_CAN_USE_AT_AVAILABLE 1 +#else + #define AF_CAN_USE_AT_AVAILABLE 0 +#endif +#if ((__IPHONE_OS_VERSION_MAX_ALLOWED && __IPHONE_OS_VERSION_MAX_ALLOWED < 100000) || (__MAC_OS_VERSION_MAX_ALLOWED && __MAC_OS_VERSION_MAX_ALLOWED < 101200) ||(__WATCH_OS_MAX_VERSION_ALLOWED && __WATCH_OS_MAX_VERSION_ALLOWED < 30000) ||(__TV_OS_MAX_VERSION_ALLOWED && __TV_OS_MAX_VERSION_ALLOWED < 100000)) + #define AF_CAN_INCLUDE_SESSION_TASK_METRICS 0 +#else + #define AF_CAN_INCLUDE_SESSION_TASK_METRICS 1 #endif + +#endif /* AFCompatibilityMacros_h */ diff --git a/Pods/AFNetworking/AFNetworking/AFHTTPSessionManager.h b/Pods/AFNetworking/AFNetworking/AFHTTPSessionManager.h index 55ed92ec..943fc22d 100644 --- a/Pods/AFNetworking/AFNetworking/AFHTTPSessionManager.h +++ b/Pods/AFNetworking/AFNetworking/AFHTTPSessionManager.h @@ -1,5 +1,5 @@ // AFHTTPSessionManager.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -25,12 +25,6 @@ #endif #import -#if TARGET_OS_IOS || TARGET_OS_WATCH || TARGET_OS_TV -#import -#else -#import -#endif - #import "AFURLSessionManager.h" /** @@ -40,11 +34,9 @@ Developers targeting iOS 7 or Mac OS X 10.9 or later that deal extensively with a web service are encouraged to subclass `AFHTTPSessionManager`, providing a class method that returns a shared singleton object on which authentication and other configuration can be shared across the application. - For developers targeting iOS 6 or Mac OS X 10.8 or earlier, `AFHTTPRequestOperationManager` may be used to similar effect. - ## Methods to Override - To change the behavior of all data task operation construction, which is also used in the `GET` / `POST` / et al. convenience methods, override `dataTaskWithRequest:completionHandler:`. + To change the behavior of all data task operation construction, which is also used in the `GET` / `POST` / et al. convenience methods, override `dataTaskWithRequest:uploadProgress:downloadProgress:completionHandler:`. ## Serialization @@ -94,6 +86,15 @@ NS_ASSUME_NONNULL_BEGIN */ @property (nonatomic, strong) AFHTTPResponseSerializer * responseSerializer; +///------------------------------- +/// @name Managing Security Policy +///------------------------------- + +/** + The security policy used by created session to evaluate server trust for secure connections. `AFURLSessionManager` uses the `defaultPolicy` unless otherwise specified. A security policy configured with `AFSSLPinningModePublicKey` or `AFSSLPinningModeCertificate` can only be applied on a session manager initialized with a secure base URL (i.e. https). Applying a security policy with pinning enabled on an insecure session manager throws an `Invalid Security Policy` exception. + */ +@property (nonatomic, strong) AFSecurityPolicy *securityPolicy; + ///--------------------- /// @name Initialization ///--------------------- @@ -131,164 +132,153 @@ NS_ASSUME_NONNULL_BEGIN /** Creates and runs an `NSURLSessionDataTask` with a `GET` request. - + @param URLString The URL string used to create the request URL. @param parameters The parameters to be encoded according to the client request serializer. + @param headers The headers appended to the default headers for this request. + @param downloadProgress A block object to be executed when the download progress is updated. Note this block is called on the session queue, not the main queue. @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - - @see -dataTaskWithRequest:completionHandler: - */ -- (nullable NSURLSessionDataTask *)GET:(NSString *)URLString - parameters:(nullable id)parameters - success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success - failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure DEPRECATED_ATTRIBUTE; - - -/** - Creates and runs an `NSURLSessionDataTask` with a `GET` request. - - @param URLString The URL string used to create the request URL. - @param parameters The parameters to be encoded according to the client request serializer. - @param progress A block object to be executed when the download progress is updated. Note this block is called on the session queue, not the main queue. - @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. - @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - + @see -dataTaskWithRequest:uploadProgress:downloadProgress:completionHandler: */ - (nullable NSURLSessionDataTask *)GET:(NSString *)URLString parameters:(nullable id)parameters - progress:(nullable void (^)(NSProgress *downloadProgress)) downloadProgress + headers:(nullable NSDictionary *)headers + progress:(nullable void (^)(NSProgress *downloadProgress))downloadProgress success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; /** Creates and runs an `NSURLSessionDataTask` with a `HEAD` request. - + @param URLString The URL string used to create the request URL. @param parameters The parameters to be encoded according to the client request serializer. + @param headers The headers appended to the default headers for this request. @param success A block object to be executed when the task finishes successfully. This block has no return value and takes a single arguments: the data task. @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - + @see -dataTaskWithRequest:completionHandler: */ - (nullable NSURLSessionDataTask *)HEAD:(NSString *)URLString - parameters:(nullable id)parameters - success:(nullable void (^)(NSURLSessionDataTask *task))success - failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; - -/** - Creates and runs an `NSURLSessionDataTask` with a `POST` request. - - @param URLString The URL string used to create the request URL. - @param parameters The parameters to be encoded according to the client request serializer. - @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. - @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - - @see -dataTaskWithRequest:completionHandler: - */ -- (nullable NSURLSessionDataTask *)POST:(NSString *)URLString - parameters:(nullable id)parameters - success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success - failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure DEPRECATED_ATTRIBUTE; + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + success:(nullable void (^)(NSURLSessionDataTask *task))success + failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; /** Creates and runs an `NSURLSessionDataTask` with a `POST` request. - + @param URLString The URL string used to create the request URL. @param parameters The parameters to be encoded according to the client request serializer. - @param progress A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. + @param headers The headers appended to the default headers for this request. + @param uploadProgress A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - + @see -dataTaskWithRequest:uploadProgress:downloadProgress:completionHandler: */ - (nullable NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(nullable id)parameters - progress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgress + headers:(nullable NSDictionary *)headers + progress:(nullable void (^)(NSProgress *uploadProgress))uploadProgress success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; /** Creates and runs an `NSURLSessionDataTask` with a multipart `POST` request. - + @param URLString The URL string used to create the request URL. @param parameters The parameters to be encoded according to the client request serializer. + @param headers The headers appended to the default headers for this request. @param block A block that takes a single argument and appends data to the HTTP body. The block argument is an object adopting the `AFMultipartFormData` protocol. + @param uploadProgress A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - - @see -dataTaskWithRequest:completionHandler: - */ -- (nullable NSURLSessionDataTask *)POST:(NSString *)URLString - parameters:(nullable id)parameters - constructingBodyWithBlock:(nullable void (^)(id formData))block - success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success - failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure DEPRECATED_ATTRIBUTE; - -/** - Creates and runs an `NSURLSessionDataTask` with a multipart `POST` request. - - @param URLString The URL string used to create the request URL. - @param parameters The parameters to be encoded according to the client request serializer. - @param block A block that takes a single argument and appends data to the HTTP body. The block argument is an object adopting the `AFMultipartFormData` protocol. - @param progress A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. - @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. - @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - + @see -dataTaskWithRequest:uploadProgress:downloadProgress:completionHandler: */ - (nullable NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers constructingBodyWithBlock:(nullable void (^)(id formData))block - progress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgress + progress:(nullable void (^)(NSProgress *uploadProgress))uploadProgress success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; /** Creates and runs an `NSURLSessionDataTask` with a `PUT` request. - + @param URLString The URL string used to create the request URL. @param parameters The parameters to be encoded according to the client request serializer. + @param headers The headers appended to the default headers for this request. @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - + @see -dataTaskWithRequest:completionHandler: */ - (nullable NSURLSessionDataTask *)PUT:(NSString *)URLString - parameters:(nullable id)parameters - success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success - failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success + failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; /** Creates and runs an `NSURLSessionDataTask` with a `PATCH` request. - + @param URLString The URL string used to create the request URL. @param parameters The parameters to be encoded according to the client request serializer. + @param headers The headers appended to the default headers for this request. @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - + @see -dataTaskWithRequest:completionHandler: */ - (nullable NSURLSessionDataTask *)PATCH:(NSString *)URLString - parameters:(nullable id)parameters - success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success - failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success + failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; /** Creates and runs an `NSURLSessionDataTask` with a `DELETE` request. - + @param URLString The URL string used to create the request URL. @param parameters The parameters to be encoded according to the client request serializer. + @param headers The headers appended to the default headers for this request. @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. - + @see -dataTaskWithRequest:completionHandler: */ - (nullable NSURLSessionDataTask *)DELETE:(NSString *)URLString - parameters:(nullable id)parameters - success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success - failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success + failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; + +/** + Creates an `NSURLSessionDataTask` with a custom `HTTPMethod` request. + + @param method The HTTPMethod string used to create the request. + @param URLString The URL string used to create the request URL. + @param parameters The parameters to be encoded according to the client request serializer. + @param headers The headers appended to the default headers for this request. + @param uploadProgress A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. + @param downloadProgress A block object to be executed when the download progress is updated. Note this block is called on the session queue, not the main queue. + @param success A block object to be executed when the task finishes successfully. This block has no return value and takes two arguments: the data task, and the response object created by the client response serializer. + @param failure A block object to be executed when the task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a two arguments: the data task and the error describing the network or parsing error that occurred. + + @see -dataTaskWithRequest:uploadProgress:downloadProgress:completionHandler: + */ +- (nullable NSURLSessionDataTask *)dataTaskWithHTTPMethod:(NSString *)method + URLString:(NSString *)URLString + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + uploadProgress:(nullable void (^)(NSProgress *uploadProgress))uploadProgress + downloadProgress:(nullable void (^)(NSProgress *downloadProgress))downloadProgress + success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success + failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure; @end diff --git a/Pods/AFNetworking/AFNetworking/AFHTTPSessionManager.m b/Pods/AFNetworking/AFNetworking/AFHTTPSessionManager.m index a28cc6ed..b4ab5915 100644 --- a/Pods/AFNetworking/AFNetworking/AFHTTPSessionManager.m +++ b/Pods/AFNetworking/AFNetworking/AFHTTPSessionManager.m @@ -1,5 +1,5 @@ // AFHTTPSessionManager.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -98,105 +98,100 @@ - (void)setResponseSerializer:(AFHTTPResponseSerializer *)headers + progress:(nullable void (^)(NSProgress * _Nonnull))downloadProgress + success:(nullable void (^)(NSURLSessionDataTask * _Nonnull, id _Nullable))success + failure:(nullable void (^)(NSURLSessionDataTask * _Nullable, NSError * _Nonnull))failure { - + NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"GET" URLString:URLString parameters:parameters + headers:headers uploadProgress:nil downloadProgress:downloadProgress success:success failure:failure]; - + [dataTask resume]; - + return dataTask; } - (NSURLSessionDataTask *)HEAD:(NSString *)URLString - parameters:(id)parameters - success:(void (^)(NSURLSessionDataTask *task))success - failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + success:(nullable void (^)(NSURLSessionDataTask * _Nonnull))success + failure:(nullable void (^)(NSURLSessionDataTask * _Nullable, NSError * _Nonnull))failure { - NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"HEAD" URLString:URLString parameters:parameters uploadProgress:nil downloadProgress:nil success:^(NSURLSessionDataTask *task, __unused id responseObject) { + NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"HEAD" URLString:URLString parameters:parameters headers:headers uploadProgress:nil downloadProgress:nil success:^(NSURLSessionDataTask *task, __unused id responseObject) { if (success) { success(task); } } failure:failure]; - + [dataTask resume]; - + return dataTask; } -- (NSURLSessionDataTask *)POST:(NSString *)URLString - parameters:(id)parameters - success:(void (^)(NSURLSessionDataTask *task, id responseObject))success - failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure -{ - return [self POST:URLString parameters:parameters progress:nil success:success failure:failure]; -} - -- (NSURLSessionDataTask *)POST:(NSString *)URLString - parameters:(id)parameters - progress:(void (^)(NSProgress * _Nonnull))uploadProgress - success:(void (^)(NSURLSessionDataTask * _Nonnull, id _Nullable))success - failure:(void (^)(NSURLSessionDataTask * _Nullable, NSError * _Nonnull))failure +- (nullable NSURLSessionDataTask *)POST:(NSString *)URLString + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + progress:(nullable void (^)(NSProgress *uploadProgress))uploadProgress + success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success + failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure { - NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"POST" URLString:URLString parameters:parameters uploadProgress:uploadProgress downloadProgress:nil success:success failure:failure]; - + NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"POST" URLString:URLString parameters:parameters headers:headers uploadProgress:uploadProgress downloadProgress:nil success:success failure:failure]; + [dataTask resume]; - + return dataTask; } - (NSURLSessionDataTask *)POST:(NSString *)URLString parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers constructingBodyWithBlock:(nullable void (^)(id _Nonnull))block - success:(nullable void (^)(NSURLSessionDataTask * _Nonnull, id _Nullable))success - failure:(nullable void (^)(NSURLSessionDataTask * _Nullable, NSError * _Nonnull))failure -{ - return [self POST:URLString parameters:parameters constructingBodyWithBlock:block progress:nil success:success failure:failure]; -} - -- (NSURLSessionDataTask *)POST:(NSString *)URLString - parameters:(id)parameters - constructingBodyWithBlock:(void (^)(id formData))block progress:(nullable void (^)(NSProgress * _Nonnull))uploadProgress - success:(void (^)(NSURLSessionDataTask *task, id responseObject))success - failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure + success:(nullable void (^)(NSURLSessionDataTask * _Nonnull, id _Nullable))success failure:(void (^)(NSURLSessionDataTask * _Nullable, NSError * _Nonnull))failure { NSError *serializationError = nil; NSMutableURLRequest *request = [self.requestSerializer multipartFormRequestWithMethod:@"POST" URLString:[[NSURL URLWithString:URLString relativeToURL:self.baseURL] absoluteString] parameters:parameters constructingBodyWithBlock:block error:&serializationError]; + for (NSString *headerField in headers.keyEnumerator) { + [request setValue:headers[headerField] forHTTPHeaderField:headerField]; + } if (serializationError) { if (failure) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" dispatch_async(self.completionQueue ?: dispatch_get_main_queue(), ^{ failure(nil, serializationError); }); -#pragma clang diagnostic pop } - + return nil; } - + __block NSURLSessionDataTask *task = [self uploadTaskWithStreamedRequest:request progress:uploadProgress completionHandler:^(NSURLResponse * __unused response, id responseObject, NSError *error) { if (error) { if (failure) { @@ -208,66 +203,71 @@ - (NSURLSessionDataTask *)POST:(NSString *)URLString } } }]; - + [task resume]; - + return task; } - (NSURLSessionDataTask *)PUT:(NSString *)URLString - parameters:(id)parameters - success:(void (^)(NSURLSessionDataTask *task, id responseObject))success - failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + success:(nullable void (^)(NSURLSessionDataTask *task, id responseObject))success + failure:(nullable void (^)(NSURLSessionDataTask *task, NSError *error))failure { - NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"PUT" URLString:URLString parameters:parameters uploadProgress:nil downloadProgress:nil success:success failure:failure]; - + NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"PUT" URLString:URLString parameters:parameters headers:headers uploadProgress:nil downloadProgress:nil success:success failure:failure]; + [dataTask resume]; - + return dataTask; } - (NSURLSessionDataTask *)PATCH:(NSString *)URLString - parameters:(id)parameters - success:(void (^)(NSURLSessionDataTask *task, id responseObject))success - failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + success:(nullable void (^)(NSURLSessionDataTask *task, id responseObject))success + failure:(nullable void (^)(NSURLSessionDataTask *task, NSError *error))failure { - NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"PATCH" URLString:URLString parameters:parameters uploadProgress:nil downloadProgress:nil success:success failure:failure]; - + NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"PATCH" URLString:URLString parameters:parameters headers:headers uploadProgress:nil downloadProgress:nil success:success failure:failure]; + [dataTask resume]; - + return dataTask; } - (NSURLSessionDataTask *)DELETE:(NSString *)URLString - parameters:(id)parameters - success:(void (^)(NSURLSessionDataTask *task, id responseObject))success - failure:(void (^)(NSURLSessionDataTask *task, NSError *error))failure + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers + success:(nullable void (^)(NSURLSessionDataTask *task, id responseObject))success + failure:(nullable void (^)(NSURLSessionDataTask *task, NSError *error))failure { - NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"DELETE" URLString:URLString parameters:parameters uploadProgress:nil downloadProgress:nil success:success failure:failure]; - + NSURLSessionDataTask *dataTask = [self dataTaskWithHTTPMethod:@"DELETE" URLString:URLString parameters:parameters headers:headers uploadProgress:nil downloadProgress:nil success:success failure:failure]; + [dataTask resume]; - + return dataTask; } + - (NSURLSessionDataTask *)dataTaskWithHTTPMethod:(NSString *)method URLString:(NSString *)URLString - parameters:(id)parameters + parameters:(nullable id)parameters + headers:(nullable NSDictionary *)headers uploadProgress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgress downloadProgress:(nullable void (^)(NSProgress *downloadProgress)) downloadProgress - success:(void (^)(NSURLSessionDataTask *, id))success - failure:(void (^)(NSURLSessionDataTask *, NSError *))failure + success:(nullable void (^)(NSURLSessionDataTask *task, id _Nullable responseObject))success + failure:(nullable void (^)(NSURLSessionDataTask * _Nullable task, NSError *error))failure { NSError *serializationError = nil; NSMutableURLRequest *request = [self.requestSerializer requestWithMethod:method URLString:[[NSURL URLWithString:URLString relativeToURL:self.baseURL] absoluteString] parameters:parameters error:&serializationError]; + for (NSString *headerField in headers.keyEnumerator) { + [request setValue:headers[headerField] forHTTPHeaderField:headerField]; + } if (serializationError) { if (failure) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" dispatch_async(self.completionQueue ?: dispatch_get_main_queue(), ^{ failure(nil, serializationError); }); -#pragma clang diagnostic pop } return nil; @@ -310,11 +310,7 @@ - (instancetype)initWithCoder:(NSCoder *)decoder { if (!configuration) { NSString *configurationIdentifier = [decoder decodeObjectOfClass:[NSString class] forKey:@"identifier"]; if (configurationIdentifier) { -#if (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) && __IPHONE_OS_VERSION_MIN_REQUIRED >= 80000) || (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 1100) configuration = [NSURLSessionConfiguration backgroundSessionConfigurationWithIdentifier:configurationIdentifier]; -#else - configuration = [NSURLSessionConfiguration backgroundSessionConfiguration:configurationIdentifier]; -#endif } } diff --git a/Pods/AFNetworking/AFNetworking/AFNetworkReachabilityManager.h b/Pods/AFNetworking/AFNetworking/AFNetworkReachabilityManager.h index 4cf0496d..21982a0e 100644 --- a/Pods/AFNetworking/AFNetworking/AFNetworkReachabilityManager.h +++ b/Pods/AFNetworking/AFNetworking/AFNetworkReachabilityManager.h @@ -1,5 +1,5 @@ // AFNetworkReachabilityManager.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -38,7 +38,7 @@ NS_ASSUME_NONNULL_BEGIN Reachability can be used to determine background information about why a network operation failed, or to trigger a network operation retrying when a connection is established. It should not be used to prevent a user from initiating a network request, as it's possible that an initial request may be required to establish reachability. - See Apple's Reachability Sample Code (https://developer.apple.com/library/ios/samplecode/reachability/) + See Apple's Reachability Sample Code ( https://developer.apple.com/library/ios/samplecode/reachability/ ) @warning Instances of `AFNetworkReachabilityManager` must be started with `-startMonitoring` before reachability status can be determined. */ @@ -107,6 +107,16 @@ NS_ASSUME_NONNULL_BEGIN */ - (instancetype)initWithReachability:(SCNetworkReachabilityRef)reachability NS_DESIGNATED_INITIALIZER; +/** + * Unavailable initializer + */ ++ (instancetype)new NS_UNAVAILABLE; + +/** + * Unavailable initializer + */ +- (instancetype)init NS_UNAVAILABLE; + ///-------------------------------------------------- /// @name Starting & Stopping Reachability Monitoring ///-------------------------------------------------- diff --git a/Pods/AFNetworking/AFNetworking/AFNetworkReachabilityManager.m b/Pods/AFNetworking/AFNetworking/AFNetworkReachabilityManager.m index 5fba0f70..0322bf9b 100644 --- a/Pods/AFNetworking/AFNetworking/AFNetworkReachabilityManager.m +++ b/Pods/AFNetworking/AFNetworking/AFNetworkReachabilityManager.m @@ -1,5 +1,5 @@ // AFNetworkReachabilityManager.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -32,6 +32,7 @@ NSString * const AFNetworkingReachabilityNotificationStatusItem = @"AFNetworkingReachabilityNotificationStatusItem"; typedef void (^AFNetworkReachabilityStatusBlock)(AFNetworkReachabilityStatus status); +typedef AFNetworkReachabilityManager * (^AFNetworkReachabilityStatusCallback)(AFNetworkReachabilityStatus status); NSString * AFStringFromNetworkReachabilityStatus(AFNetworkReachabilityStatus status) { switch (status) { @@ -78,20 +79,21 @@ static AFNetworkReachabilityStatus AFNetworkReachabilityStatusForFlags(SCNetwork * a queued notification (for an earlier status condition) is processed after * the later update, resulting in the listener being left in the wrong state. */ -static void AFPostReachabilityStatusChange(SCNetworkReachabilityFlags flags, AFNetworkReachabilityStatusBlock block) { +static void AFPostReachabilityStatusChange(SCNetworkReachabilityFlags flags, AFNetworkReachabilityStatusCallback block) { AFNetworkReachabilityStatus status = AFNetworkReachabilityStatusForFlags(flags); dispatch_async(dispatch_get_main_queue(), ^{ + AFNetworkReachabilityManager *manager = nil; if (block) { - block(status); + manager = block(status); } NSNotificationCenter *notificationCenter = [NSNotificationCenter defaultCenter]; NSDictionary *userInfo = @{ AFNetworkingReachabilityNotificationStatusItem: @(status) }; - [notificationCenter postNotificationName:AFNetworkingReachabilityDidChangeNotification object:nil userInfo:userInfo]; + [notificationCenter postNotificationName:AFNetworkingReachabilityDidChangeNotification object:manager userInfo:userInfo]; }); } static void AFNetworkReachabilityCallback(SCNetworkReachabilityRef __unused target, SCNetworkReachabilityFlags flags, void *info) { - AFPostReachabilityStatusChange(flags, (__bridge AFNetworkReachabilityStatusBlock)info); + AFPostReachabilityStatusChange(flags, (__bridge AFNetworkReachabilityStatusCallback)info); } @@ -106,7 +108,7 @@ static void AFNetworkReachabilityReleaseCallback(const void *info) { } @interface AFNetworkReachabilityManager () -@property (readwrite, nonatomic, strong) id networkReachability; +@property (readonly, nonatomic, assign) SCNetworkReachabilityRef networkReachability; @property (readwrite, nonatomic, assign) AFNetworkReachabilityStatus networkReachabilityStatus; @property (readwrite, nonatomic, copy) AFNetworkReachabilityStatusBlock networkReachabilityStatusBlock; @end @@ -123,24 +125,24 @@ + (instancetype)sharedManager { return _sharedManager; } -#ifndef __clang_analyzer__ + (instancetype)managerForDomain:(NSString *)domain { SCNetworkReachabilityRef reachability = SCNetworkReachabilityCreateWithName(kCFAllocatorDefault, [domain UTF8String]); AFNetworkReachabilityManager *manager = [[self alloc] initWithReachability:reachability]; + + CFRelease(reachability); return manager; } -#endif -#ifndef __clang_analyzer__ + (instancetype)managerForAddress:(const void *)address { SCNetworkReachabilityRef reachability = SCNetworkReachabilityCreateWithAddress(kCFAllocatorDefault, (const struct sockaddr *)address); AFNetworkReachabilityManager *manager = [[self alloc] initWithReachability:reachability]; + CFRelease(reachability); + return manager; } -#endif + (instancetype)manager { @@ -164,19 +166,26 @@ - (instancetype)initWithReachability:(SCNetworkReachabilityRef)reachability { return nil; } - self.networkReachability = CFBridgingRelease(reachability); + _networkReachability = CFRetain(reachability); self.networkReachabilityStatus = AFNetworkReachabilityStatusUnknown; return self; } -- (instancetype)init NS_UNAVAILABLE +- (instancetype)init { + @throw [NSException exceptionWithName:NSGenericException + reason:@"`-init` unavailable. Use `-initWithReachability:` instead" + userInfo:nil]; return nil; } - (void)dealloc { [self stopMonitoring]; + + if (_networkReachability != NULL) { + CFRelease(_networkReachability); + } } #pragma mark - @@ -203,24 +212,24 @@ - (void)startMonitoring { } __weak __typeof(self)weakSelf = self; - AFNetworkReachabilityStatusBlock callback = ^(AFNetworkReachabilityStatus status) { + AFNetworkReachabilityStatusCallback callback = ^(AFNetworkReachabilityStatus status) { __strong __typeof(weakSelf)strongSelf = weakSelf; strongSelf.networkReachabilityStatus = status; if (strongSelf.networkReachabilityStatusBlock) { strongSelf.networkReachabilityStatusBlock(status); } - + + return strongSelf; }; - id networkReachability = self.networkReachability; SCNetworkReachabilityContext context = {0, (__bridge void *)callback, AFNetworkReachabilityRetainCallback, AFNetworkReachabilityReleaseCallback, NULL}; - SCNetworkReachabilitySetCallback((__bridge SCNetworkReachabilityRef)networkReachability, AFNetworkReachabilityCallback, &context); - SCNetworkReachabilityScheduleWithRunLoop((__bridge SCNetworkReachabilityRef)networkReachability, CFRunLoopGetMain(), kCFRunLoopCommonModes); + SCNetworkReachabilitySetCallback(self.networkReachability, AFNetworkReachabilityCallback, &context); + SCNetworkReachabilityScheduleWithRunLoop(self.networkReachability, CFRunLoopGetMain(), kCFRunLoopCommonModes); dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0),^{ SCNetworkReachabilityFlags flags; - if (SCNetworkReachabilityGetFlags((__bridge SCNetworkReachabilityRef)networkReachability, &flags)) { + if (SCNetworkReachabilityGetFlags(self.networkReachability, &flags)) { AFPostReachabilityStatusChange(flags, callback); } }); @@ -231,7 +240,7 @@ - (void)stopMonitoring { return; } - SCNetworkReachabilityUnscheduleFromRunLoop((__bridge SCNetworkReachabilityRef)self.networkReachability, CFRunLoopGetMain(), kCFRunLoopCommonModes); + SCNetworkReachabilityUnscheduleFromRunLoop(self.networkReachability, CFRunLoopGetMain(), kCFRunLoopCommonModes); } #pragma mark - diff --git a/Pods/AFNetworking/AFNetworking/AFSecurityPolicy.h b/Pods/AFNetworking/AFNetworking/AFSecurityPolicy.h index 90fa2129..9b966a57 100644 --- a/Pods/AFNetworking/AFNetworking/AFSecurityPolicy.h +++ b/Pods/AFNetworking/AFNetworking/AFSecurityPolicy.h @@ -1,5 +1,5 @@ // AFSecurityPolicy.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -45,10 +45,10 @@ NS_ASSUME_NONNULL_BEGIN /** The certificates used to evaluate server trust according to the SSL pinning mode. - - By default, this property is set to any (`.cer`) certificates included in the target compiling AFNetworking. Note that if you are using AFNetworking as embedded framework, no certificates will be pinned by default. Use `certificatesInBundle` to load certificates from your target, and then create a new policy by calling `policyWithPinningMode:withPinnedCertificates`. Note that if pinning is enabled, `evaluateServerTrust:forDomain:` will return true if any pinned certificate matches. + + @see policyWithPinningMode:withPinnedCertificates: */ @property (nonatomic, strong, nullable) NSSet *pinnedCertificates; @@ -90,10 +90,14 @@ NS_ASSUME_NONNULL_BEGIN /** Creates and returns a security policy with the specified pinning mode. + + Certificates with the `.cer` extension found in the main bundle will be pinned. If you want more control over which certificates are pinned, please use `policyWithPinningMode:withPinnedCertificates:` instead. @param pinningMode The SSL pinning mode. @return A new security policy. + + @see -policyWithPinningMode:withPinnedCertificates: */ + (instancetype)policyWithPinningMode:(AFSSLPinningMode)pinningMode; @@ -104,7 +108,10 @@ NS_ASSUME_NONNULL_BEGIN @param pinnedCertificates The certificates to pin against. @return A new security policy. - */ + + @see +certificatesInBundle: + @see -pinnedCertificates +*/ + (instancetype)policyWithPinningMode:(AFSSLPinningMode)pinningMode withPinnedCertificates:(NSSet *)pinnedCertificates; ///------------------------------ diff --git a/Pods/AFNetworking/AFNetworking/AFSecurityPolicy.m b/Pods/AFNetworking/AFNetworking/AFSecurityPolicy.m index 3704cca0..da199aa3 100644 --- a/Pods/AFNetworking/AFNetworking/AFSecurityPolicy.m +++ b/Pods/AFNetworking/AFNetworking/AFSecurityPolicy.m @@ -1,5 +1,5 @@ // AFSecurityPolicy.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -51,8 +51,6 @@ static BOOL AFSecKeyIsEqualToKey(SecKeyRef key1, SecKeyRef key2) { static id AFPublicKeyForCertificate(NSData *certificate) { id allowedPublicKey = nil; SecCertificateRef allowedCertificate; - SecCertificateRef allowedCertificates[1]; - CFArrayRef tempCertificates = nil; SecPolicyRef policy = nil; SecTrustRef allowedTrust = nil; SecTrustResultType result; @@ -60,12 +58,12 @@ static id AFPublicKeyForCertificate(NSData *certificate) { allowedCertificate = SecCertificateCreateWithData(NULL, (__bridge CFDataRef)certificate); __Require_Quiet(allowedCertificate != NULL, _out); - allowedCertificates[0] = allowedCertificate; - tempCertificates = CFArrayCreate(NULL, (const void **)allowedCertificates, 1, NULL); - policy = SecPolicyCreateBasicX509(); - __Require_noErr_Quiet(SecTrustCreateWithCertificates(tempCertificates, policy, &allowedTrust), _out); + __Require_noErr_Quiet(SecTrustCreateWithCertificates(allowedCertificate, policy, &allowedTrust), _out); +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" __Require_noErr_Quiet(SecTrustEvaluate(allowedTrust, &result), _out); +#pragma clang diagnostic pop allowedPublicKey = (__bridge_transfer id)SecTrustCopyPublicKey(allowedTrust); @@ -78,10 +76,6 @@ static id AFPublicKeyForCertificate(NSData *certificate) { CFRelease(policy); } - if (tempCertificates) { - CFRelease(tempCertificates); - } - if (allowedCertificate) { CFRelease(allowedCertificate); } @@ -92,7 +86,10 @@ static id AFPublicKeyForCertificate(NSData *certificate) { static BOOL AFServerTrustIsValid(SecTrustRef serverTrust) { BOOL isValid = NO; SecTrustResultType result; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" __Require_noErr_Quiet(SecTrustEvaluate(serverTrust, &result), _out); +#pragma clang diagnostic pop isValid = (result == kSecTrustResultUnspecified || result == kSecTrustResultProceed); @@ -124,10 +121,11 @@ static BOOL AFServerTrustIsValid(SecTrustRef serverTrust) { SecTrustRef trust; __Require_noErr_Quiet(SecTrustCreateWithCertificates(certificates, policy, &trust), _out); - SecTrustResultType result; +#pragma clang diagnostic push +#pragma clang diagnostic ignored "-Wdeprecated-declarations" __Require_noErr_Quiet(SecTrustEvaluate(trust, &result), _out); - +#pragma clang diagnostic pop [trustChain addObject:(__bridge_transfer id)SecTrustCopyPublicKey(trust)]; _out: @@ -167,17 +165,6 @@ + (NSSet *)certificatesInBundle:(NSBundle *)bundle { return [NSSet setWithSet:certificates]; } -+ (NSSet *)defaultPinnedCertificates { - static NSSet *_defaultPinnedCertificates = nil; - static dispatch_once_t onceToken; - dispatch_once(&onceToken, ^{ - NSBundle *bundle = [NSBundle bundleForClass:[self class]]; - _defaultPinnedCertificates = [self certificatesInBundle:bundle]; - }); - - return _defaultPinnedCertificates; -} - + (instancetype)defaultPolicy { AFSecurityPolicy *securityPolicy = [[self alloc] init]; securityPolicy.SSLPinningMode = AFSSLPinningModeNone; @@ -186,7 +173,8 @@ + (instancetype)defaultPolicy { } + (instancetype)policyWithPinningMode:(AFSSLPinningMode)pinningMode { - return [self policyWithPinningMode:pinningMode withPinnedCertificates:[self defaultPinnedCertificates]]; + NSSet *defaultPinnedCertificates = [self certificatesInBundle:[NSBundle mainBundle]]; + return [self policyWithPinningMode:pinningMode withPinnedCertificates:defaultPinnedCertificates]; } + (instancetype)policyWithPinningMode:(AFSSLPinningMode)pinningMode withPinnedCertificates:(NSSet *)pinnedCertificates { @@ -256,14 +244,11 @@ - (BOOL)evaluateServerTrust:(SecTrustRef)serverTrust if (self.SSLPinningMode == AFSSLPinningModeNone) { return self.allowInvalidCertificates || AFServerTrustIsValid(serverTrust); - } else if (!AFServerTrustIsValid(serverTrust) && !self.allowInvalidCertificates) { + } else if (!self.allowInvalidCertificates && !AFServerTrustIsValid(serverTrust)) { return NO; } switch (self.SSLPinningMode) { - case AFSSLPinningModeNone: - default: - return NO; case AFSSLPinningModeCertificate: { NSMutableArray *pinnedCertificates = [NSMutableArray array]; for (NSData *certificateData in self.pinnedCertificates) { @@ -299,6 +284,9 @@ - (BOOL)evaluateServerTrust:(SecTrustRef)serverTrust } return trustedPublicKeyCount > 0; } + + default: + return NO; } return NO; @@ -326,7 +314,7 @@ - (instancetype)initWithCoder:(NSCoder *)decoder { self.SSLPinningMode = [[decoder decodeObjectOfClass:[NSNumber class] forKey:NSStringFromSelector(@selector(SSLPinningMode))] unsignedIntegerValue]; self.allowInvalidCertificates = [decoder decodeBoolForKey:NSStringFromSelector(@selector(allowInvalidCertificates))]; self.validatesDomainName = [decoder decodeBoolForKey:NSStringFromSelector(@selector(validatesDomainName))]; - self.pinnedCertificates = [decoder decodeObjectOfClass:[NSArray class] forKey:NSStringFromSelector(@selector(pinnedCertificates))]; + self.pinnedCertificates = [decoder decodeObjectOfClass:[NSSet class] forKey:NSStringFromSelector(@selector(pinnedCertificates))]; return self; } diff --git a/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.h b/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.h index 134b7dd7..b17e871e 100644 --- a/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.h +++ b/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.h @@ -1,5 +1,5 @@ // AFURLRequestSerialization.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -30,6 +30,31 @@ NS_ASSUME_NONNULL_BEGIN +/** + Returns a percent-escaped string following RFC 3986 for a query string key or value. + RFC 3986 states that the following characters are "reserved" characters. + - General Delimiters: ":", "#", "[", "]", "@", "?", "/" + - Sub-Delimiters: "!", "$", "&", "'", "(", ")", "*", "+", ",", ";", "=" + + In RFC 3986 - Section 3.4, it states that the "?" and "/" characters should not be escaped to allow + query strings to include a URL. Therefore, all "reserved" characters with the exception of "?" and "/" + should be percent-escaped in the query string. + + @param string The string to be percent-escaped. + + @return The percent-escaped string. + */ +FOUNDATION_EXPORT NSString * AFPercentEscapedStringFromString(NSString *string); + +/** + A helper method to generate encoded url query parameters for appending to the end of a URL. + + @param parameters A dictionary of key/values to be encoded. + + @return A url encoded query string + */ +FOUNDATION_EXPORT NSString * AFQueryStringFromParameters(NSDictionary *parameters); + /** The `AFURLRequestSerialization` protocol is adopted by an object that encodes parameters for a specified HTTP requests. Request serializers may encode parameters as query strings, HTTP bodies, setting the appropriate HTTP header fields as necessary. @@ -191,7 +216,7 @@ forHTTPHeaderField:(NSString *)field; @param block A block that defines a process of encoding parameters into a query string. This block returns the query string and takes three arguments: the request, the parameters to encode, and the error that occurred when attempting to encode parameters for the given request. */ -- (void)setQueryStringSerializationWithBlock:(nullable NSString * (^)(NSURLRequest *request, id parameters, NSError * __autoreleasing *error))block; +- (void)setQueryStringSerializationWithBlock:(nullable NSString * _Nullable (^)(NSURLRequest *request, id parameters, NSError * __autoreleasing *error))block; ///------------------------------- /// @name Creating Request Objects @@ -209,10 +234,10 @@ forHTTPHeaderField:(NSString *)field; @return An `NSMutableURLRequest` object. */ -- (NSMutableURLRequest *)requestWithMethod:(NSString *)method - URLString:(NSString *)URLString - parameters:(nullable id)parameters - error:(NSError * _Nullable __autoreleasing *)error; +- (nullable NSMutableURLRequest *)requestWithMethod:(NSString *)method + URLString:(NSString *)URLString + parameters:(nullable id)parameters + error:(NSError * _Nullable __autoreleasing *)error; /** Creates an `NSMutableURLRequest` object with the specified HTTP method and URLString, and constructs a `multipart/form-data` HTTP body, using the specified parameters and multipart form data block. See http://www.w3.org/TR/html4/interact/forms.html#h-17.13.4.2 diff --git a/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.m b/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.m index bbab7c48..f60b6f9d 100644 --- a/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.m +++ b/Pods/AFNetworking/AFNetworking/AFURLRequestSerialization.m @@ -1,5 +1,5 @@ // AFURLRequestSerialization.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -44,7 +44,7 @@ - parameter string: The string to be percent-escaped. - returns: The percent-escaped string. */ -static NSString * AFPercentEscapedStringFromString(NSString *string) { +NSString * AFPercentEscapedStringFromString(NSString *string) { static NSString * const kAFCharactersGeneralDelimitersToEncode = @":#[]@"; // does not include "?" or "/" due to RFC 3986 - Section 3.4 static NSString * const kAFCharactersSubDelimitersToEncode = @"!$&'()*+,;="; @@ -60,10 +60,7 @@ NSMutableString *escaped = @"".mutableCopy; while (index < string.length) { -#pragma GCC diagnostic push -#pragma GCC diagnostic ignored "-Wgnu" NSUInteger length = MIN(string.length - index, batchSize); -#pragma GCC diagnostic pop NSRange range = NSMakeRange(index, length); // To avoid breaking up character sequences such as 👴🏻👮🏽 @@ -119,7 +116,7 @@ - (NSString *)URLEncodedStringValue { FOUNDATION_EXPORT NSArray * AFQueryStringPairsFromDictionary(NSDictionary *dictionary); FOUNDATION_EXPORT NSArray * AFQueryStringPairsFromKeyAndValue(NSString *key, id value); -static NSString * AFQueryStringFromParameters(NSDictionary *parameters) { +NSString * AFQueryStringFromParameters(NSDictionary *parameters) { NSMutableArray *mutablePairs = [NSMutableArray array]; for (AFQueryStringPair *pair in AFQueryStringPairsFromDictionary(parameters)) { [mutablePairs addObject:[pair URLEncodedStringValue]]; @@ -189,6 +186,7 @@ - (NSMutableURLRequest *)requestByFinalizingMultipartFormData; @interface AFHTTPRequestSerializer () @property (readwrite, nonatomic, strong) NSMutableSet *mutableObservedChangedKeyPaths; @property (readwrite, nonatomic, strong) NSMutableDictionary *mutableHTTPRequestHeaders; +@property (readwrite, nonatomic, strong) dispatch_queue_t requestHeaderModificationQueue; @property (readwrite, nonatomic, assign) AFHTTPRequestQueryStringSerializationStyle queryStringSerializationStyle; @property (readwrite, nonatomic, copy) AFQueryStringSerializationBlock queryStringSerialization; @end @@ -208,6 +206,7 @@ - (instancetype)init { self.stringEncoding = NSUTF8StringEncoding; self.mutableHTTPRequestHeaders = [NSMutableDictionary dictionary]; + self.requestHeaderModificationQueue = dispatch_queue_create("requestHeaderModificationQueue", DISPATCH_QUEUE_CONCURRENT); // Accept-Language HTTP Header; see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.4 NSMutableArray *acceptLanguagesComponents = [NSMutableArray array]; @@ -218,19 +217,17 @@ - (instancetype)init { }]; [self setValue:[acceptLanguagesComponents componentsJoinedByString:@", "] forHTTPHeaderField:@"Accept-Language"]; + // User-Agent Header; see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.43 NSString *userAgent = nil; -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" #if TARGET_OS_IOS - // User-Agent Header; see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.43 userAgent = [NSString stringWithFormat:@"%@/%@ (%@; iOS %@; Scale/%0.2f)", [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleExecutableKey] ?: [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleIdentifierKey], [[NSBundle mainBundle] infoDictionary][@"CFBundleShortVersionString"] ?: [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleVersionKey], [[UIDevice currentDevice] model], [[UIDevice currentDevice] systemVersion], [[UIScreen mainScreen] scale]]; +#elif TARGET_OS_TV + userAgent = [NSString stringWithFormat:@"%@/%@ (%@; tvOS %@; Scale/%0.2f)", [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleExecutableKey] ?: [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleIdentifierKey], [[NSBundle mainBundle] infoDictionary][@"CFBundleShortVersionString"] ?: [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleVersionKey], [[UIDevice currentDevice] model], [[UIDevice currentDevice] systemVersion], [[UIScreen mainScreen] scale]]; #elif TARGET_OS_WATCH - // User-Agent Header; see http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.43 userAgent = [NSString stringWithFormat:@"%@/%@ (%@; watchOS %@; Scale/%0.2f)", [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleExecutableKey] ?: [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleIdentifierKey], [[NSBundle mainBundle] infoDictionary][@"CFBundleShortVersionString"] ?: [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleVersionKey], [[WKInterfaceDevice currentDevice] model], [[WKInterfaceDevice currentDevice] systemVersion], [[WKInterfaceDevice currentDevice] screenScale]]; #elif defined(__MAC_OS_X_VERSION_MIN_REQUIRED) userAgent = [NSString stringWithFormat:@"%@/%@ (Mac OS X %@)", [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleExecutableKey] ?: [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleIdentifierKey], [[NSBundle mainBundle] infoDictionary][@"CFBundleShortVersionString"] ?: [[NSBundle mainBundle] infoDictionary][(__bridge NSString *)kCFBundleVersionKey], [[NSProcessInfo processInfo] operatingSystemVersionString]]; #endif -#pragma clang diagnostic pop if (userAgent) { if (![userAgent canBeConvertedToEncoding:NSASCIIStringEncoding]) { NSMutableString *mutableUserAgent = [userAgent mutableCopy]; @@ -306,17 +303,27 @@ - (void)setTimeoutInterval:(NSTimeInterval)timeoutInterval { #pragma mark - - (NSDictionary *)HTTPRequestHeaders { - return [NSDictionary dictionaryWithDictionary:self.mutableHTTPRequestHeaders]; + NSDictionary __block *value; + dispatch_sync(self.requestHeaderModificationQueue, ^{ + value = [NSDictionary dictionaryWithDictionary:self.mutableHTTPRequestHeaders]; + }); + return value; } - (void)setValue:(NSString *)value forHTTPHeaderField:(NSString *)field { - [self.mutableHTTPRequestHeaders setValue:value forKey:field]; + dispatch_barrier_sync(self.requestHeaderModificationQueue, ^{ + [self.mutableHTTPRequestHeaders setValue:value forKey:field]; + }); } - (NSString *)valueForHTTPHeaderField:(NSString *)field { - return [self.mutableHTTPRequestHeaders valueForKey:field]; + NSString __block *value; + dispatch_sync(self.requestHeaderModificationQueue, ^{ + value = [self.mutableHTTPRequestHeaders valueForKey:field]; + }); + return value; } - (void)setAuthorizationHeaderFieldWithUsername:(NSString *)username @@ -328,7 +335,9 @@ - (void)setAuthorizationHeaderFieldWithUsername:(NSString *)username } - (void)clearAuthorizationHeader { - [self.mutableHTTPRequestHeaders removeObjectForKey:@"Authorization"]; + dispatch_barrier_sync(self.requestHeaderModificationQueue, ^{ + [self.mutableHTTPRequestHeaders removeObjectForKey:@"Authorization"]; + }); } #pragma mark - @@ -500,7 +509,7 @@ - (NSURLRequest *)requestBySerializingRequest:(NSURLRequest *)request } if ([self.HTTPMethodsEncodingParametersInURI containsObject:[[request HTTPMethod] uppercaseString]]) { - if (query) { + if (query && query.length > 0) { mutableRequest.URL = [NSURL URLWithString:[[mutableRequest.URL absoluteString] stringByAppendingFormat:mutableRequest.URL.query ? @"&%@" : @"?%@", query]]; } } else { @@ -560,15 +569,19 @@ - (instancetype)initWithCoder:(NSCoder *)decoder { } - (void)encodeWithCoder:(NSCoder *)coder { - [coder encodeObject:self.mutableHTTPRequestHeaders forKey:NSStringFromSelector(@selector(mutableHTTPRequestHeaders))]; - [coder encodeInteger:self.queryStringSerializationStyle forKey:NSStringFromSelector(@selector(queryStringSerializationStyle))]; + dispatch_sync(self.requestHeaderModificationQueue, ^{ + [coder encodeObject:self.mutableHTTPRequestHeaders forKey:NSStringFromSelector(@selector(mutableHTTPRequestHeaders))]; + }); + [coder encodeObject:@(self.queryStringSerializationStyle) forKey:NSStringFromSelector(@selector(queryStringSerializationStyle))]; } #pragma mark - NSCopying - (instancetype)copyWithZone:(NSZone *)zone { AFHTTPRequestSerializer *serializer = [[[self class] allocWithZone:zone] init]; - serializer.mutableHTTPRequestHeaders = [self.mutableHTTPRequestHeaders mutableCopyWithZone:zone]; + dispatch_sync(self.requestHeaderModificationQueue, ^{ + serializer.mutableHTTPRequestHeaders = [self.mutableHTTPRequestHeaders mutableCopyWithZone:zone]; + }); serializer.queryStringSerializationStyle = self.queryStringSerializationStyle; serializer.queryStringSerialization = self.queryStringSerialization; @@ -667,6 +680,11 @@ - (instancetype)initWithURLRequest:(NSMutableURLRequest *)urlRequest return self; } +- (void)setRequest:(NSMutableURLRequest *)request +{ + _request = [request mutableCopy]; +} + - (BOOL)appendPartWithFileURL:(NSURL *)fileURL name:(NSString *)name error:(NSError * __autoreleasing *)error @@ -835,14 +853,11 @@ @interface AFMultipartBodyStream () @end @implementation AFMultipartBodyStream -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wimplicit-atomic-properties" #if (defined(__IPHONE_OS_VERSION_MAX_ALLOWED) && __IPHONE_OS_VERSION_MAX_ALLOWED >= 80000) || (defined(__MAC_OS_X_VERSION_MAX_ALLOWED) && __MAC_OS_X_VERSION_MAX_ALLOWED >= 1100) @synthesize delegate; #endif @synthesize streamStatus; @synthesize streamError; -#pragma clang diagnostic pop - (instancetype)initWithStringEncoding:(NSStringEncoding)encoding { self = [super init]; @@ -888,8 +903,6 @@ - (NSInteger)read:(uint8_t *)buffer NSInteger totalNumberOfBytesRead = 0; -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" while ((NSUInteger)totalNumberOfBytesRead < MIN(length, self.numberOfBytesInPacket)) { if (!self.currentHTTPBodyPart || ![self.currentHTTPBodyPart hasBytesAvailable]) { if (!(self.currentHTTPBodyPart = [self.HTTPBodyPartEnumerator nextObject])) { @@ -910,7 +923,6 @@ - (NSInteger)read:(uint8_t *)buffer } } } -#pragma clang diagnostic pop return totalNumberOfBytesRead; } @@ -1091,8 +1103,6 @@ - (BOOL)hasBytesAvailable { return YES; } -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wcovered-switch-default" switch (self.inputStream.streamStatus) { case NSStreamStatusNotOpen: case NSStreamStatusOpening: @@ -1106,7 +1116,6 @@ - (BOOL)hasBytesAvailable { default: return NO; } -#pragma clang diagnostic pop } - (NSInteger)read:(uint8_t *)buffer @@ -1151,11 +1160,8 @@ - (NSInteger)readData:(NSData *)data intoBuffer:(uint8_t *)buffer maxLength:(NSUInteger)length { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" NSRange range = NSMakeRange((NSUInteger)_phaseReadOffset, MIN([data length] - ((NSUInteger)_phaseReadOffset), length)); [data getBytes:buffer range:range]; -#pragma clang diagnostic pop _phaseReadOffset += range.length; @@ -1174,8 +1180,6 @@ - (BOOL)transitionToNextPhase { return YES; } -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wcovered-switch-default" switch (_phase) { case AFEncapsulationBoundaryPhase: _phase = AFHeaderPhase; @@ -1195,7 +1199,6 @@ - (BOOL)transitionToNextPhase { break; } _phaseReadOffset = 0; -#pragma clang diagnostic pop return YES; } @@ -1257,7 +1260,21 @@ - (NSURLRequest *)requestBySerializingRequest:(NSURLRequest *)request [mutableRequest setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; } - [mutableRequest setHTTPBody:[NSJSONSerialization dataWithJSONObject:parameters options:self.writingOptions error:error]]; + if (![NSJSONSerialization isValidJSONObject:parameters]) { + if (error) { + NSDictionary *userInfo = @{NSLocalizedFailureReasonErrorKey: NSLocalizedStringFromTable(@"The `parameters` argument is not valid JSON.", @"AFNetworking", nil)}; + *error = [[NSError alloc] initWithDomain:AFURLRequestSerializationErrorDomain code:NSURLErrorCannotDecodeContentData userInfo:userInfo]; + } + return nil; + } + + NSData *jsonData = [NSJSONSerialization dataWithJSONObject:parameters options:self.writingOptions error:error]; + + if (!jsonData) { + return nil; + } + + [mutableRequest setHTTPBody:jsonData]; } return mutableRequest; @@ -1279,7 +1296,7 @@ - (instancetype)initWithCoder:(NSCoder *)decoder { - (void)encodeWithCoder:(NSCoder *)coder { [super encodeWithCoder:coder]; - [coder encodeInteger:self.writingOptions forKey:NSStringFromSelector(@selector(writingOptions))]; + [coder encodeObject:@(self.writingOptions) forKey:NSStringFromSelector(@selector(writingOptions))]; } #pragma mark - NSCopying @@ -1336,7 +1353,13 @@ - (NSURLRequest *)requestBySerializingRequest:(NSURLRequest *)request [mutableRequest setValue:@"application/x-plist" forHTTPHeaderField:@"Content-Type"]; } - [mutableRequest setHTTPBody:[NSPropertyListSerialization dataWithPropertyList:parameters format:self.format options:self.writeOptions error:error]]; + NSData *plistData = [NSPropertyListSerialization dataWithPropertyList:parameters format:self.format options:self.writeOptions error:error]; + + if (!plistData) { + return nil; + } + + [mutableRequest setHTTPBody:plistData]; } return mutableRequest; @@ -1359,7 +1382,7 @@ - (instancetype)initWithCoder:(NSCoder *)decoder { - (void)encodeWithCoder:(NSCoder *)coder { [super encodeWithCoder:coder]; - [coder encodeInteger:self.format forKey:NSStringFromSelector(@selector(format))]; + [coder encodeObject:@(self.format) forKey:NSStringFromSelector(@selector(format))]; [coder encodeObject:@(self.writeOptions) forKey:NSStringFromSelector(@selector(writeOptions))]; } diff --git a/Pods/AFNetworking/AFNetworking/AFURLResponseSerialization.h b/Pods/AFNetworking/AFNetworking/AFURLResponseSerialization.h index f9e14c69..56a4d28a 100644 --- a/Pods/AFNetworking/AFNetworking/AFURLResponseSerialization.h +++ b/Pods/AFNetworking/AFNetworking/AFURLResponseSerialization.h @@ -1,5 +1,5 @@ // AFURLResponseSerialization.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -24,6 +24,11 @@ NS_ASSUME_NONNULL_BEGIN +/** + Recursively removes `NSNull` values from a JSON object. +*/ +FOUNDATION_EXPORT id AFJSONObjectByRemovingKeysWithNullValues(id JSONObject, NSJSONReadingOptions readingOptions); + /** The `AFURLResponseSerialization` protocol is adopted by an object that decodes data into a more useful object representation, according to details in the server response. Response serializers may additionally perform validation on the incoming response and data. @@ -57,11 +62,6 @@ NS_ASSUME_NONNULL_BEGIN - (instancetype)init; -/** - The string encoding used to serialize data received from the server, when no string encoding is specified by the response. `NSUTF8StringEncoding` by default. - */ -@property (nonatomic, assign) NSStringEncoding stringEncoding; - /** Creates and returns a serializer with default configuration. */ @@ -111,6 +111,8 @@ NS_ASSUME_NONNULL_BEGIN - `application/json` - `text/json` - `text/javascript` + + In RFC 7159 - Section 8.1, it states that JSON text is required to be encoded in UTF-8, UTF-16, or UTF-32, and the default encoding is UTF-8. NSJSONSerialization provides support for all the encodings listed in the specification, and recommends UTF-8 for efficiency. Using an unsupported encoding will result in serialization error. See the `NSJSONSerialization` documentation for more details. */ @interface AFJSONResponseSerializer : AFHTTPResponseSerializer @@ -166,7 +168,7 @@ NS_ASSUME_NONNULL_BEGIN - (instancetype)init; /** - Input and output options specifically intended for `NSXMLDocument` objects. For possible values, see the `NSJSONSerialization` documentation section "NSJSONReadingOptions". `0` by default. + Input and output options specifically intended for `NSXMLDocument` objects. For possible values, see the `NSXMLDocument` documentation section "Input and Output Options". `0` by default. */ @property (nonatomic, assign) NSUInteger options; diff --git a/Pods/AFNetworking/AFNetworking/AFURLResponseSerialization.m b/Pods/AFNetworking/AFNetworking/AFURLResponseSerialization.m index ef5e3342..2715a1b3 100755 --- a/Pods/AFNetworking/AFNetworking/AFURLResponseSerialization.m +++ b/Pods/AFNetworking/AFNetworking/AFURLResponseSerialization.m @@ -1,5 +1,5 @@ // AFURLResponseSerialization.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -60,11 +60,13 @@ static BOOL AFErrorOrUnderlyingErrorHasCodeInDomain(NSError *error, NSInteger co return NO; } -static id AFJSONObjectByRemovingKeysWithNullValues(id JSONObject, NSJSONReadingOptions readingOptions) { +id AFJSONObjectByRemovingKeysWithNullValues(id JSONObject, NSJSONReadingOptions readingOptions) { if ([JSONObject isKindOfClass:[NSArray class]]) { NSMutableArray *mutableArray = [NSMutableArray arrayWithCapacity:[(NSArray *)JSONObject count]]; for (id value in (NSArray *)JSONObject) { - [mutableArray addObject:AFJSONObjectByRemovingKeysWithNullValues(value, readingOptions)]; + if (![value isEqual:[NSNull null]]) { + [mutableArray addObject:AFJSONObjectByRemovingKeysWithNullValues(value, readingOptions)]; + } } return (readingOptions & NSJSONReadingMutableContainers) ? mutableArray : [NSArray arrayWithArray:mutableArray]; @@ -97,8 +99,6 @@ - (instancetype)init { return nil; } - self.stringEncoding = NSUTF8StringEncoding; - self.acceptableStatusCodes = [NSIndexSet indexSetWithIndexesInRange:NSMakeRange(200, 100)]; self.acceptableContentTypes = nil; @@ -114,8 +114,10 @@ - (BOOL)validateResponse:(NSHTTPURLResponse *)response BOOL responseIsValid = YES; NSError *validationError = nil; - if (response && [response isKindOfClass:[NSHTTPURLResponse class]]) { - if (self.acceptableContentTypes && ![self.acceptableContentTypes containsObject:[response MIMEType]]) { + if ([response isKindOfClass:[NSHTTPURLResponse class]]) { + if (self.acceptableContentTypes && ![self.acceptableContentTypes containsObject:[response MIMEType]] && + !([response MIMEType] == nil && [data length] == 0)) { + if ([data length] > 0 && [response URL]) { NSMutableDictionary *mutableUserInfo = [@{ NSLocalizedDescriptionKey: [NSString stringWithFormat:NSLocalizedStringFromTable(@"Request failed: unacceptable content-type: %@", @"AFNetworking", nil), [response MIMEType]], @@ -180,7 +182,7 @@ - (instancetype)initWithCoder:(NSCoder *)decoder { } self.acceptableStatusCodes = [decoder decodeObjectOfClass:[NSIndexSet class] forKey:NSStringFromSelector(@selector(acceptableStatusCodes))]; - self.acceptableContentTypes = [decoder decodeObjectOfClass:[NSIndexSet class] forKey:NSStringFromSelector(@selector(acceptableContentTypes))]; + self.acceptableContentTypes = [decoder decodeObjectOfClass:[NSSet class] forKey:NSStringFromSelector(@selector(acceptableContentTypes))]; return self; } @@ -242,46 +244,26 @@ - (id)responseObjectForResponse:(NSURLResponse *)response // Workaround for behavior of Rails to return a single space for `head :ok` (a workaround for a bug in Safari), which is not interpreted as valid input by NSJSONSerialization. // See https://github.com/rails/rails/issues/1742 - NSStringEncoding stringEncoding = self.stringEncoding; - if (response.textEncodingName) { - CFStringEncoding encoding = CFStringConvertIANACharSetNameToEncoding((CFStringRef)response.textEncodingName); - if (encoding != kCFStringEncodingInvalidId) { - stringEncoding = CFStringConvertEncodingToNSStringEncoding(encoding); - } + BOOL isSpace = [data isEqualToData:[NSData dataWithBytes:" " length:1]]; + + if (data.length == 0 || isSpace) { + return nil; } - - id responseObject = nil; + NSError *serializationError = nil; - @autoreleasepool { - NSString *responseString = [[NSString alloc] initWithData:data encoding:stringEncoding]; - if (responseString && ![responseString isEqualToString:@" "]) { - // Workaround for a bug in NSJSONSerialization when Unicode character escape codes are used instead of the actual character - // See http://stackoverflow.com/a/12843465/157142 - data = [responseString dataUsingEncoding:NSUTF8StringEncoding]; - - if (data) { - if ([data length] > 0) { - responseObject = [NSJSONSerialization JSONObjectWithData:data options:self.readingOptions error:&serializationError]; - } else { - return nil; - } - } else { - NSDictionary *userInfo = @{ - NSLocalizedDescriptionKey: NSLocalizedStringFromTable(@"Data failed decoding as a UTF-8 string", @"AFNetworking", nil), - NSLocalizedFailureReasonErrorKey: [NSString stringWithFormat:NSLocalizedStringFromTable(@"Could not decode string: %@", @"AFNetworking", nil), responseString] - }; + + id responseObject = [NSJSONSerialization JSONObjectWithData:data options:self.readingOptions error:&serializationError]; - serializationError = [NSError errorWithDomain:AFURLResponseSerializationErrorDomain code:NSURLErrorCannotDecodeContentData userInfo:userInfo]; - } + if (!responseObject) + { + if (error) { + *error = AFErrorWithUnderlyingError(serializationError, *error); } + return nil; } - - if (self.removesKeysWithNullValues && responseObject) { - responseObject = AFJSONObjectByRemovingKeysWithNullValues(responseObject, self.readingOptions); - } - - if (error) { - *error = AFErrorWithUnderlyingError(serializationError, *error); + + if (self.removesKeysWithNullValues) { + return AFJSONObjectByRemovingKeysWithNullValues(responseObject, self.readingOptions); } return responseObject; @@ -289,6 +271,10 @@ - (id)responseObjectForResponse:(NSURLResponse *)response #pragma mark - NSSecureCoding ++ (BOOL)supportsSecureCoding { + return YES; +} + - (instancetype)initWithCoder:(NSCoder *)decoder { self = [super initWithCoder:decoder]; if (!self) { @@ -311,7 +297,7 @@ - (void)encodeWithCoder:(NSCoder *)coder { #pragma mark - NSCopying - (instancetype)copyWithZone:(NSZone *)zone { - AFJSONResponseSerializer *serializer = [[[self class] allocWithZone:zone] init]; + AFJSONResponseSerializer *serializer = [super copyWithZone:zone]; serializer.readingOptions = self.readingOptions; serializer.removesKeysWithNullValues = self.removesKeysWithNullValues; @@ -401,10 +387,14 @@ - (id)responseObjectForResponse:(NSURLResponse *)response NSError *serializationError = nil; NSXMLDocument *document = [[NSXMLDocument alloc] initWithData:data options:self.options error:&serializationError]; - if (error) { - *error = AFErrorWithUnderlyingError(serializationError, *error); + if (!document) + { + if (error) { + *error = AFErrorWithUnderlyingError(serializationError, *error); + } + return nil; } - + return document; } @@ -430,7 +420,7 @@ - (void)encodeWithCoder:(NSCoder *)coder { #pragma mark - NSCopying - (instancetype)copyWithZone:(NSZone *)zone { - AFXMLDocumentResponseSerializer *serializer = [[[self class] allocWithZone:zone] init]; + AFXMLDocumentResponseSerializer *serializer = [super copyWithZone:zone]; serializer.options = self.options; return serializer; @@ -481,15 +471,20 @@ - (id)responseObjectForResponse:(NSURLResponse *)response } } - id responseObject; - NSError *serializationError = nil; - - if (data) { - responseObject = [NSPropertyListSerialization propertyListWithData:data options:self.readOptions format:NULL error:&serializationError]; + if (!data) { + return nil; } - - if (error) { - *error = AFErrorWithUnderlyingError(serializationError, *error); + + NSError *serializationError = nil; + + id responseObject = [NSPropertyListSerialization propertyListWithData:data options:self.readOptions format:NULL error:&serializationError]; + + if (!responseObject) + { + if (error) { + *error = AFErrorWithUnderlyingError(serializationError, *error); + } + return nil; } return responseObject; @@ -497,6 +492,10 @@ - (id)responseObjectForResponse:(NSURLResponse *)response #pragma mark - NSSecureCoding ++ (BOOL)supportsSecureCoding { + return YES; +} + - (instancetype)initWithCoder:(NSCoder *)decoder { self = [super initWithCoder:decoder]; if (!self) { @@ -519,7 +518,7 @@ - (void)encodeWithCoder:(NSCoder *)coder { #pragma mark - NSCopying - (instancetype)copyWithZone:(NSZone *)zone { - AFPropertyListResponseSerializer *serializer = [[[self class] allocWithZone:zone] init]; + AFPropertyListResponseSerializer *serializer = [super copyWithZone:zone]; serializer.format = self.format; serializer.readOptions = self.readOptions; @@ -713,6 +712,10 @@ - (id)responseObjectForResponse:(NSURLResponse *)response #pragma mark - NSSecureCoding ++ (BOOL)supportsSecureCoding { + return YES; +} + - (instancetype)initWithCoder:(NSCoder *)decoder { self = [super initWithCoder:decoder]; if (!self) { @@ -745,7 +748,7 @@ - (void)encodeWithCoder:(NSCoder *)coder { #pragma mark - NSCopying - (instancetype)copyWithZone:(NSZone *)zone { - AFImageResponseSerializer *serializer = [[[self class] allocWithZone:zone] init]; + AFImageResponseSerializer *serializer = [super copyWithZone:zone]; #if TARGET_OS_IOS || TARGET_OS_TV || TARGET_OS_WATCH serializer.imageScale = self.imageScale; @@ -799,13 +802,18 @@ - (id)responseObjectForResponse:(NSURLResponse *)response #pragma mark - NSSecureCoding ++ (BOOL)supportsSecureCoding { + return YES; +} + - (instancetype)initWithCoder:(NSCoder *)decoder { self = [super initWithCoder:decoder]; if (!self) { return nil; } - self.responseSerializers = [decoder decodeObjectOfClass:[NSArray class] forKey:NSStringFromSelector(@selector(responseSerializers))]; + NSSet *classes = [NSSet setWithArray:@[[NSArray class], [AFHTTPResponseSerializer class]]]; + self.responseSerializers = [decoder decodeObjectOfClasses:classes forKey:NSStringFromSelector(@selector(responseSerializers))]; return self; } @@ -819,7 +827,7 @@ - (void)encodeWithCoder:(NSCoder *)coder { #pragma mark - NSCopying - (instancetype)copyWithZone:(NSZone *)zone { - AFCompoundResponseSerializer *serializer = [[[self class] allocWithZone:zone] init]; + AFCompoundResponseSerializer *serializer = [super copyWithZone:zone]; serializer.responseSerializers = self.responseSerializers; return serializer; diff --git a/Pods/AFNetworking/AFNetworking/AFURLSessionManager.h b/Pods/AFNetworking/AFNetworking/AFURLSessionManager.h index be918284..88700c39 100644 --- a/Pods/AFNetworking/AFNetworking/AFURLSessionManager.h +++ b/Pods/AFNetworking/AFNetworking/AFURLSessionManager.h @@ -1,5 +1,5 @@ // AFURLSessionManager.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -25,6 +25,7 @@ #import "AFURLResponseSerialization.h" #import "AFURLRequestSerialization.h" #import "AFSecurityPolicy.h" +#import "AFCompatibilityMacros.h" #if !TARGET_OS_WATCH #import "AFNetworkReachabilityManager.h" #endif @@ -51,6 +52,7 @@ - `URLSession:willPerformHTTPRedirection:newRequest:completionHandler:` - `URLSession:task:didReceiveChallenge:completionHandler:` - `URLSession:task:didSendBodyData:totalBytesSent:totalBytesExpectedToSend:` + - `URLSession:task:needNewBodyStream:` - `URLSession:task:didCompleteWithError:` ### `NSURLSessionDataDelegate` @@ -63,7 +65,7 @@ ### `NSURLSessionDownloadDelegate` - `URLSession:downloadTask:didFinishDownloadingToURL:` - - `URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesWritten:totalBytesExpectedToWrite:` + - `URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:` - `URLSession:downloadTask:didResumeAtOffset:expectedTotalBytes:` If any of these methods are overridden in a subclass, they _must_ call the `super` implementation first. @@ -163,19 +165,6 @@ NS_ASSUME_NONNULL_BEGIN */ @property (nonatomic, strong, nullable) dispatch_group_t completionGroup; -///--------------------------------- -/// @name Working Around System Bugs -///--------------------------------- - -/** - Whether to attempt to retry creation of upload tasks for background sessions when initial call returns `nil`. `NO` by default. - - @bug As of iOS 7.0, there is a bug where upload tasks created for background tasks are sometimes `nil`. As a workaround, if this property is `YES`, AFNetworking will follow Apple's recommendation to try creating the task again. - - @see https://github.com/AFNetworking/AFNetworking/issues/1675 - */ -@property (nonatomic, assign) BOOL attemptsToRecreateUploadTasksForBackgroundSessions; - ///--------------------- /// @name Initialization ///--------------------- @@ -190,11 +179,12 @@ NS_ASSUME_NONNULL_BEGIN - (instancetype)initWithSessionConfiguration:(nullable NSURLSessionConfiguration *)configuration NS_DESIGNATED_INITIALIZER; /** - Invalidates the managed session, optionally canceling pending tasks. - - @param cancelPendingTasks Whether or not to cancel pending tasks. + Invalidates the managed session, optionally canceling pending tasks and optionally resets given session. + + @param cancelPendingTasks Whether or not to cancel pending tasks. + @param resetSession Whether or not to reset the session of the manager. */ -- (void)invalidateSessionCancelingTasks:(BOOL)cancelPendingTasks; +- (void)invalidateSessionCancelingTasks:(BOOL)cancelPendingTasks resetSession:(BOOL)resetSession; ///------------------------- /// @name Running Data Tasks @@ -204,22 +194,13 @@ NS_ASSUME_NONNULL_BEGIN Creates an `NSURLSessionDataTask` with the specified request. @param request The HTTP request for the request. + @param uploadProgressBlock A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. + @param downloadProgressBlock A block object to be executed when the download progress is updated. Note this block is called on the session queue, not the main queue. @param completionHandler A block object to be executed when the task finishes. This block has no return value and takes three arguments: the server response, the response object created by that serializer, and the error that occurred, if any. */ - (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request - completionHandler:(nullable void (^)(NSURLResponse *response, id _Nullable responseObject, NSError * _Nullable error))completionHandler; - -/** - Creates an `NSURLSessionDataTask` with the specified request. - - @param request The HTTP request for the request. - @param uploadProgress A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. - @param downloadProgress A block object to be executed when the download progress is updated. Note this block is called on the session queue, not the main queue. - @param completionHandler A block object to be executed when the task finishes. This block has no return value and takes three arguments: the server response, the response object created by that serializer, and the error that occurred, if any. - */ -- (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request - uploadProgress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgressBlock - downloadProgress:(nullable void (^)(NSProgress *downloadProgress)) downloadProgressBlock + uploadProgress:(nullable void (^)(NSProgress *uploadProgress))uploadProgressBlock + downloadProgress:(nullable void (^)(NSProgress *downloadProgress))downloadProgressBlock completionHandler:(nullable void (^)(NSURLResponse *response, id _Nullable responseObject, NSError * _Nullable error))completionHandler; ///--------------------------- @@ -231,14 +212,14 @@ NS_ASSUME_NONNULL_BEGIN @param request The HTTP request for the request. @param fileURL A URL to the local file to be uploaded. - @param progress A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. + @param uploadProgressBlock A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. @param completionHandler A block object to be executed when the task finishes. This block has no return value and takes three arguments: the server response, the response object created by that serializer, and the error that occurred, if any. @see `attemptsToRecreateUploadTasksForBackgroundSessions` */ - (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request fromFile:(NSURL *)fileURL - progress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgressBlock + progress:(nullable void (^)(NSProgress *uploadProgress))uploadProgressBlock completionHandler:(nullable void (^)(NSURLResponse *response, id _Nullable responseObject, NSError * _Nullable error))completionHandler; /** @@ -246,23 +227,23 @@ NS_ASSUME_NONNULL_BEGIN @param request The HTTP request for the request. @param bodyData A data object containing the HTTP body to be uploaded. - @param progress A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. + @param uploadProgressBlock A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. @param completionHandler A block object to be executed when the task finishes. This block has no return value and takes three arguments: the server response, the response object created by that serializer, and the error that occurred, if any. */ - (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request fromData:(nullable NSData *)bodyData - progress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgressBlock + progress:(nullable void (^)(NSProgress *uploadProgress))uploadProgressBlock completionHandler:(nullable void (^)(NSURLResponse *response, id _Nullable responseObject, NSError * _Nullable error))completionHandler; /** Creates an `NSURLSessionUploadTask` with the specified streaming request. @param request The HTTP request for the request. - @param progress A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. + @param uploadProgressBlock A block object to be executed when the upload progress is updated. Note this block is called on the session queue, not the main queue. @param completionHandler A block object to be executed when the task finishes. This block has no return value and takes three arguments: the server response, the response object created by that serializer, and the error that occurred, if any. */ - (NSURLSessionUploadTask *)uploadTaskWithStreamedRequest:(NSURLRequest *)request - progress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgressBlock + progress:(nullable void (^)(NSProgress *uploadProgress))uploadProgressBlock completionHandler:(nullable void (^)(NSURLResponse *response, id _Nullable responseObject, NSError * _Nullable error))completionHandler; ///----------------------------- @@ -273,14 +254,14 @@ NS_ASSUME_NONNULL_BEGIN Creates an `NSURLSessionDownloadTask` with the specified request. @param request The HTTP request for the request. - @param progress A block object to be executed when the download progress is updated. Note this block is called on the session queue, not the main queue. + @param downloadProgressBlock A block object to be executed when the download progress is updated. Note this block is called on the session queue, not the main queue. @param destination A block object to be executed in order to determine the destination of the downloaded file. This block takes two arguments, the target path & the server response, and returns the desired file URL of the resulting download. The temporary file used during the download will be automatically deleted after being moved to the returned URL. @param completionHandler A block to be executed when a task finishes. This block has no return value and takes three arguments: the server response, the path of the downloaded file, and the error describing the network or parsing error that occurred, if any. @warning If using a background `NSURLSessionConfiguration` on iOS, these blocks will be lost when the app is terminated. Background sessions may prefer to use `-setDownloadTaskDidFinishDownloadingBlock:` to specify the URL for saving the downloaded file, rather than the destination block of this method. */ - (NSURLSessionDownloadTask *)downloadTaskWithRequest:(NSURLRequest *)request - progress:(nullable void (^)(NSProgress *downloadProgress)) downloadProgressBlock + progress:(nullable void (^)(NSProgress *downloadProgress))downloadProgressBlock destination:(nullable NSURL * (^)(NSURL *targetPath, NSURLResponse *response))destination completionHandler:(nullable void (^)(NSURLResponse *response, NSURL * _Nullable filePath, NSError * _Nullable error))completionHandler; @@ -288,12 +269,12 @@ NS_ASSUME_NONNULL_BEGIN Creates an `NSURLSessionDownloadTask` with the specified resume data. @param resumeData The data used to resume downloading. - @param progress A block object to be executed when the download progress is updated. Note this block is called on the session queue, not the main queue. + @param downloadProgressBlock A block object to be executed when the download progress is updated. Note this block is called on the session queue, not the main queue. @param destination A block object to be executed in order to determine the destination of the downloaded file. This block takes two arguments, the target path & the server response, and returns the desired file URL of the resulting download. The temporary file used during the download will be automatically deleted after being moved to the returned URL. @param completionHandler A block to be executed when a task finishes. This block has no return value and takes three arguments: the server response, the path of the downloaded file, and the error describing the network or parsing error that occurred, if any. */ - (NSURLSessionDownloadTask *)downloadTaskWithResumeData:(NSData *)resumeData - progress:(nullable void (^)(NSProgress *downloadProgress)) downloadProgressBlock + progress:(nullable void (^)(NSProgress *downloadProgress))downloadProgressBlock destination:(nullable NSURL * (^)(NSURL *targetPath, NSURLResponse *response))destination completionHandler:(nullable void (^)(NSURLResponse *response, NSURL * _Nullable filePath, NSError * _Nullable error))completionHandler; @@ -334,6 +315,11 @@ NS_ASSUME_NONNULL_BEGIN Sets a block to be executed when a connection level authentication challenge has occurred, as handled by the `NSURLSessionDelegate` method `URLSession:didReceiveChallenge:completionHandler:`. @param block A block object to be executed when a connection level authentication challenge has occurred. The block returns the disposition of the authentication challenge, and takes three arguments: the session, the authentication challenge, and a pointer to the credential that should be used to resolve the challenge. + + @warning Implementing a session authentication challenge handler yourself totally bypasses AFNetworking's security policy defined in `AFSecurityPolicy`. Make sure you fully understand the implications before implementing a custom session authentication challenge handler. If you do not want to bypass AFNetworking's security policy, use `setTaskDidReceiveAuthenticationChallengeBlock:` instead. + + @see -securityPolicy + @see -setTaskDidReceiveAuthenticationChallengeBlock: */ - (void)setSessionDidReceiveAuthenticationChallengeBlock:(nullable NSURLSessionAuthChallengeDisposition (^)(NSURLSession *session, NSURLAuthenticationChallenge *challenge, NSURLCredential * _Nullable __autoreleasing * _Nullable credential))block; @@ -353,14 +339,27 @@ NS_ASSUME_NONNULL_BEGIN @param block A block object to be executed when an HTTP request is attempting to perform a redirection to a different URL. The block returns the request to be made for the redirection, and takes four arguments: the session, the task, the redirection response, and the request corresponding to the redirection response. */ -- (void)setTaskWillPerformHTTPRedirectionBlock:(nullable NSURLRequest * (^)(NSURLSession *session, NSURLSessionTask *task, NSURLResponse *response, NSURLRequest *request))block; +- (void)setTaskWillPerformHTTPRedirectionBlock:(nullable NSURLRequest * _Nullable (^)(NSURLSession *session, NSURLSessionTask *task, NSURLResponse *response, NSURLRequest *request))block; /** Sets a block to be executed when a session task has received a request specific authentication challenge, as handled by the `NSURLSessionTaskDelegate` method `URLSession:task:didReceiveChallenge:completionHandler:`. - - @param block A block object to be executed when a session task has received a request specific authentication challenge. The block returns the disposition of the authentication challenge, and takes four arguments: the session, the task, the authentication challenge, and a pointer to the credential that should be used to resolve the challenge. - */ -- (void)setTaskDidReceiveAuthenticationChallengeBlock:(nullable NSURLSessionAuthChallengeDisposition (^)(NSURLSession *session, NSURLSessionTask *task, NSURLAuthenticationChallenge *challenge, NSURLCredential * _Nullable __autoreleasing * _Nullable credential))block; + + @param authenticationChallengeHandler A block object to be executed when a session task has received a request specific authentication challenge. + + When implementing an authentication challenge handler, you should check the authentication method first (`challenge.protectionSpace.authenticationMethod `) to decide if you want to handle the authentication challenge yourself or if you want AFNetworking to handle it. If you want AFNetworking to handle the authentication challenge, just return `@(NSURLSessionAuthChallengePerformDefaultHandling)`. For example, you certainly want AFNetworking to handle certificate validation (i.e. authentication method == `NSURLAuthenticationMethodServerTrust`) as defined by the security policy. If you want to handle the challenge yourself, you have four options: + + 1. Return `nil` from the authentication challenge handler. You **MUST** call the completion handler with a disposition and credentials yourself. Use this if you need to present a user interface to let the user enter their credentials. + 2. Return an `NSError` object from the authentication challenge handler. You **MUST NOT** call the completion handler when returning an `NSError `. The returned error will be reported in the completion handler of the task. Use this if you need to abort an authentication challenge with a specific error. + 3. Return an `NSURLCredential` object from the authentication challenge handler. You **MUST NOT** call the completion handler when returning an `NSURLCredential`. The returned credentials will be used to fulfil the challenge. Use this when you can get credentials without presenting a user interface. + 4. Return an `NSNumber` object wrapping an `NSURLSessionAuthChallengeDisposition`. Supported values are `@(NSURLSessionAuthChallengePerformDefaultHandling)`, `@(NSURLSessionAuthChallengeCancelAuthenticationChallenge)` and `@(NSURLSessionAuthChallengeRejectProtectionSpace)`. You **MUST NOT** call the completion handler when returning an `NSNumber`. + + If you return anything else from the authentication challenge handler, an exception will be thrown. + + For more information about how URL sessions handle the different types of authentication challenges, see [NSURLSession](https://developer.apple.com/reference/foundation/nsurlsession?language=objc) and [URL Session Programming Guide](https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/URLLoadingSystem/URLLoadingSystem.html). + + @see -securityPolicy + */ +- (void)setAuthenticationChallengeHandler:(id (^)(NSURLSession *session, NSURLSessionTask *task, NSURLAuthenticationChallenge *challenge, void (^completionHandler)(NSURLSessionAuthChallengeDisposition , NSURLCredential * _Nullable)))authenticationChallengeHandler; /** Sets a block to be executed periodically to track upload progress, as handled by the `NSURLSessionTaskDelegate` method `URLSession:task:didSendBodyData:totalBytesSent:totalBytesExpectedToSend:`. @@ -376,6 +375,14 @@ NS_ASSUME_NONNULL_BEGIN */ - (void)setTaskDidCompleteBlock:(nullable void (^)(NSURLSession *session, NSURLSessionTask *task, NSError * _Nullable error))block; +/** + Sets a block to be executed when metrics are finalized related to a specific task, as handled by the `NSURLSessionTaskDelegate` method `URLSession:task:didFinishCollectingMetrics:`. + + @param block A block object to be executed when a session task is completed. The block has no return value, and takes three arguments: the session, the task, and any metrics that were collected in the process of executing the task. + */ +#if AF_CAN_INCLUDE_SESSION_TASK_METRICS +- (void)setTaskDidFinishCollectingMetricsBlock:(nullable void (^)(NSURLSession *session, NSURLSessionTask *task, NSURLSessionTaskMetrics * _Nullable metrics))block AF_API_AVAILABLE(ios(10), macosx(10.12), watchos(3), tvos(10)); +#endif ///------------------------------------------- /// @name Setting Data Task Delegate Callbacks ///------------------------------------------- @@ -413,7 +420,7 @@ NS_ASSUME_NONNULL_BEGIN @param block A block object to be executed once all messages enqueued for a session have been delivered. The block has no return value and takes a single argument: the session. */ -- (void)setDidFinishEventsForBackgroundURLSessionBlock:(nullable void (^)(NSURLSession *session))block; +- (void)setDidFinishEventsForBackgroundURLSessionBlock:(nullable void (^)(NSURLSession *session))block AF_API_UNAVAILABLE(macos); ///----------------------------------------------- /// @name Setting Download Task Delegate Callbacks @@ -427,7 +434,7 @@ NS_ASSUME_NONNULL_BEGIN - (void)setDownloadTaskDidFinishDownloadingBlock:(nullable NSURL * _Nullable (^)(NSURLSession *session, NSURLSessionDownloadTask *downloadTask, NSURL *location))block; /** - Sets a block to be executed periodically to track download progress, as handled by the `NSURLSessionDownloadDelegate` method `URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesWritten:totalBytesExpectedToWrite:`. + Sets a block to be executed periodically to track download progress, as handled by the `NSURLSessionDownloadDelegate` method `URLSession:downloadTask:didWriteData:totalBytesWritten:totalBytesExpectedToWrite:`. @param block A block object to be called when an undetermined number of bytes have been downloaded from the server. This block has no return value and takes five arguments: the session, the download task, the number of bytes read since the last time the download progress block was called, the total bytes read, and the total bytes expected to be read during the request, as initially determined by the expected content size of the `NSHTTPURLResponse` object. This block may be called multiple times, and will execute on the session manager operation queue. */ @@ -466,6 +473,11 @@ FOUNDATION_EXPORT NSString * const AFNetworkingTaskDidSuspendNotification; */ FOUNDATION_EXPORT NSString * const AFURLSessionDidInvalidateNotification; +/** + Posted when a session download task finished moving the temporary download file to a specified destination successfully. + */ +FOUNDATION_EXPORT NSString * const AFURLSessionDownloadTaskDidMoveFileSuccessfullyNotification; + /** Posted when a session download task encountered an error when moving the temporary download file to a specified destination. */ @@ -496,4 +508,9 @@ FOUNDATION_EXPORT NSString * const AFNetworkingTaskDidCompleteAssetPathKey; */ FOUNDATION_EXPORT NSString * const AFNetworkingTaskDidCompleteErrorKey; +/** + The session task metrics taken from the download task. Included in the userInfo dictionary of the `AFNetworkingTaskDidCompleteSessionTaskMetrics` + */ +FOUNDATION_EXPORT NSString * const AFNetworkingTaskDidCompleteSessionTaskMetrics; + NS_ASSUME_NONNULL_END diff --git a/Pods/AFNetworking/AFNetworking/AFURLSessionManager.m b/Pods/AFNetworking/AFNetworking/AFURLSessionManager.m index de447aea..c8b6810e 100644 --- a/Pods/AFNetworking/AFNetworking/AFURLSessionManager.m +++ b/Pods/AFNetworking/AFNetworking/AFURLSessionManager.m @@ -1,5 +1,5 @@ // AFURLSessionManager.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -22,33 +22,6 @@ #import "AFURLSessionManager.h" #import -#ifndef NSFoundationVersionNumber_iOS_8_0 -#define NSFoundationVersionNumber_With_Fixed_5871104061079552_bug 1140.11 -#else -#define NSFoundationVersionNumber_With_Fixed_5871104061079552_bug NSFoundationVersionNumber_iOS_8_0 -#endif - -static dispatch_queue_t url_session_manager_creation_queue() { - static dispatch_queue_t af_url_session_manager_creation_queue; - static dispatch_once_t onceToken; - dispatch_once(&onceToken, ^{ - af_url_session_manager_creation_queue = dispatch_queue_create("com.alamofire.networking.session.manager.creation", DISPATCH_QUEUE_SERIAL); - }); - - return af_url_session_manager_creation_queue; -} - -static void url_session_manager_create_task_safely(dispatch_block_t block) { - if (NSFoundationVersionNumber < NSFoundationVersionNumber_With_Fixed_5871104061079552_bug) { - // Fix of bug - // Open Radar:http://openradar.appspot.com/radar?id=5871104061079552 (status: Fixed in iOS8) - // Issue about:https://github.com/AFNetworking/AFNetworking/issues/2093 - dispatch_sync(url_session_manager_creation_queue(), block); - } else { - block(); - } -} - static dispatch_queue_t url_session_manager_processing_queue() { static dispatch_queue_t af_url_session_manager_processing_queue; static dispatch_once_t onceToken; @@ -73,6 +46,7 @@ static dispatch_group_t url_session_manager_completion_group() { NSString * const AFNetworkingTaskDidCompleteNotification = @"com.alamofire.networking.task.complete"; NSString * const AFNetworkingTaskDidSuspendNotification = @"com.alamofire.networking.task.suspend"; NSString * const AFURLSessionDidInvalidateNotification = @"com.alamofire.networking.session.invalidate"; +NSString * const AFURLSessionDownloadTaskDidMoveFileSuccessfullyNotification = @"com.alamofire.networking.session.download.file-manager-succeed"; NSString * const AFURLSessionDownloadTaskDidFailToMoveFileNotification = @"com.alamofire.networking.session.download.file-manager-error"; NSString * const AFNetworkingTaskDidCompleteSerializedResponseKey = @"com.alamofire.networking.task.complete.serializedresponse"; @@ -80,23 +54,24 @@ static dispatch_group_t url_session_manager_completion_group() { NSString * const AFNetworkingTaskDidCompleteResponseDataKey = @"com.alamofire.networking.complete.finish.responsedata"; NSString * const AFNetworkingTaskDidCompleteErrorKey = @"com.alamofire.networking.task.complete.error"; NSString * const AFNetworkingTaskDidCompleteAssetPathKey = @"com.alamofire.networking.task.complete.assetpath"; +NSString * const AFNetworkingTaskDidCompleteSessionTaskMetrics = @"com.alamofire.networking.complete.sessiontaskmetrics"; static NSString * const AFURLSessionManagerLockName = @"com.alamofire.networking.session.manager.lock"; -static NSUInteger const AFMaximumNumberOfAttemptsToRecreateBackgroundSessionUploadTask = 3; - -static void * AFTaskStateChangedContext = &AFTaskStateChangedContext; - typedef void (^AFURLSessionDidBecomeInvalidBlock)(NSURLSession *session, NSError *error); typedef NSURLSessionAuthChallengeDisposition (^AFURLSessionDidReceiveAuthenticationChallengeBlock)(NSURLSession *session, NSURLAuthenticationChallenge *challenge, NSURLCredential * __autoreleasing *credential); typedef NSURLRequest * (^AFURLSessionTaskWillPerformHTTPRedirectionBlock)(NSURLSession *session, NSURLSessionTask *task, NSURLResponse *response, NSURLRequest *request); typedef NSURLSessionAuthChallengeDisposition (^AFURLSessionTaskDidReceiveAuthenticationChallengeBlock)(NSURLSession *session, NSURLSessionTask *task, NSURLAuthenticationChallenge *challenge, NSURLCredential * __autoreleasing *credential); +typedef id (^AFURLSessionTaskAuthenticationChallengeBlock)(NSURLSession *session, NSURLSessionTask *task, NSURLAuthenticationChallenge *challenge, void (^completionHandler)(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential *credential)); typedef void (^AFURLSessionDidFinishEventsForBackgroundURLSessionBlock)(NSURLSession *session); typedef NSInputStream * (^AFURLSessionTaskNeedNewBodyStreamBlock)(NSURLSession *session, NSURLSessionTask *task); typedef void (^AFURLSessionTaskDidSendBodyDataBlock)(NSURLSession *session, NSURLSessionTask *task, int64_t bytesSent, int64_t totalBytesSent, int64_t totalBytesExpectedToSend); typedef void (^AFURLSessionTaskDidCompleteBlock)(NSURLSession *session, NSURLSessionTask *task, NSError *error); +#if AF_CAN_INCLUDE_SESSION_TASK_METRICS +typedef void (^AFURLSessionTaskDidFinishCollectingMetricsBlock)(NSURLSession *session, NSURLSessionTask *task, NSURLSessionTaskMetrics * metrics) AF_API_AVAILABLE(ios(10), macosx(10.12), watchos(3), tvos(10)); +#endif typedef NSURLSessionResponseDisposition (^AFURLSessionDataTaskDidReceiveResponseBlock)(NSURLSession *session, NSURLSessionDataTask *dataTask, NSURLResponse *response); typedef void (^AFURLSessionDataTaskDidBecomeDownloadTaskBlock)(NSURLSession *session, NSURLSessionDataTask *dataTask, NSURLSessionDownloadTask *downloadTask); @@ -110,15 +85,18 @@ static dispatch_group_t url_session_manager_completion_group() { typedef void (^AFURLSessionTaskCompletionHandler)(NSURLResponse *response, id responseObject, NSError *error); - #pragma mark - @interface AFURLSessionManagerTaskDelegate : NSObject +- (instancetype)initWithTask:(NSURLSessionTask *)task; @property (nonatomic, weak) AFURLSessionManager *manager; @property (nonatomic, strong) NSMutableData *mutableData; @property (nonatomic, strong) NSProgress *uploadProgress; @property (nonatomic, strong) NSProgress *downloadProgress; @property (nonatomic, copy) NSURL *downloadFileURL; +#if AF_CAN_INCLUDE_SESSION_TASK_METRICS +@property (nonatomic, strong) NSURLSessionTaskMetrics *sessionTaskMetrics AF_API_AVAILABLE(ios(10), macosx(10.12), watchos(3), tvos(10)); +#endif @property (nonatomic, copy) AFURLSessionDownloadTaskDidFinishDownloadingBlock downloadTaskDidFinishDownloading; @property (nonatomic, copy) AFURLSessionTaskProgressBlock uploadProgressBlock; @property (nonatomic, copy) AFURLSessionTaskProgressBlock downloadProgressBlock; @@ -127,113 +105,56 @@ @interface AFURLSessionManagerTaskDelegate : NSObject *)change context:(void *)context { - if ([object isKindOfClass:[NSURLSessionTask class]]) { - if ([keyPath isEqualToString:NSStringFromSelector(@selector(countOfBytesReceived))]) { - self.downloadProgress.completedUnitCount = [change[@"new"] longLongValue]; - } else if ([keyPath isEqualToString:NSStringFromSelector(@selector(countOfBytesExpectedToReceive))]) { - self.downloadProgress.totalUnitCount = [change[@"new"] longLongValue]; - } else if ([keyPath isEqualToString:NSStringFromSelector(@selector(countOfBytesSent))]) { - self.uploadProgress.completedUnitCount = [change[@"new"] longLongValue]; - } else if ([keyPath isEqualToString:NSStringFromSelector(@selector(countOfBytesExpectedToSend))]) { - self.uploadProgress.totalUnitCount = [change[@"new"] longLongValue]; - } - } - else if ([object isEqual:self.downloadProgress]) { + if ([object isEqual:self.downloadProgress]) { if (self.downloadProgressBlock) { self.downloadProgressBlock(object); } @@ -245,19 +166,20 @@ - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(N } } +static const void * const AuthenticationChallengeErrorKey = &AuthenticationChallengeErrorKey; + #pragma mark - NSURLSessionTaskDelegate - (void)URLSession:(__unused NSURLSession *)session task:(NSURLSessionTask *)task didCompleteWithError:(NSError *)error { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" + error = objc_getAssociatedObject(task, AuthenticationChallengeErrorKey) ?: error; __strong AFURLSessionManager *manager = self.manager; __block id responseObject = nil; - __block NSMutableDictionary *userInfo = [NSMutableDictionary dictionary]; + NSMutableDictionary *userInfo = [NSMutableDictionary dictionary]; userInfo[AFNetworkingTaskDidCompleteResponseSerializerKey] = manager.responseSerializer; //Performance Improvement from #2672 @@ -268,6 +190,14 @@ - (void)URLSession:(__unused NSURLSession *)session self.mutableData = nil; } +#if AF_CAN_USE_AT_AVAILABLE && AF_CAN_INCLUDE_SESSION_TASK_METRICS + if (@available(iOS 10, macOS 10.12, watchOS 3, tvOS 10, *)) { + if (self.sessionTaskMetrics) { + userInfo[AFNetworkingTaskDidCompleteSessionTaskMetrics] = self.sessionTaskMetrics; + } + } +#endif + if (self.downloadFileURL) { userInfo[AFNetworkingTaskDidCompleteAssetPathKey] = self.downloadFileURL; } else if (data) { @@ -314,34 +244,71 @@ - (void)URLSession:(__unused NSURLSession *)session }); }); } -#pragma clang diagnostic pop } -#pragma mark - NSURLSessionDataTaskDelegate +#if AF_CAN_INCLUDE_SESSION_TASK_METRICS +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task +didFinishCollectingMetrics:(NSURLSessionTaskMetrics *)metrics AF_API_AVAILABLE(ios(10), macosx(10.12), watchos(3), tvos(10)) { + self.sessionTaskMetrics = metrics; +} +#endif + +#pragma mark - NSURLSessionDataDelegate - (void)URLSession:(__unused NSURLSession *)session dataTask:(__unused NSURLSessionDataTask *)dataTask didReceiveData:(NSData *)data { + self.downloadProgress.totalUnitCount = dataTask.countOfBytesExpectedToReceive; + self.downloadProgress.completedUnitCount = dataTask.countOfBytesReceived; + [self.mutableData appendData:data]; } -#pragma mark - NSURLSessionDownloadTaskDelegate +- (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task + didSendBodyData:(int64_t)bytesSent + totalBytesSent:(int64_t)totalBytesSent +totalBytesExpectedToSend:(int64_t)totalBytesExpectedToSend{ + + self.uploadProgress.totalUnitCount = task.countOfBytesExpectedToSend; + self.uploadProgress.completedUnitCount = task.countOfBytesSent; +} + +#pragma mark - NSURLSessionDownloadDelegate + +- (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask + didWriteData:(int64_t)bytesWritten + totalBytesWritten:(int64_t)totalBytesWritten +totalBytesExpectedToWrite:(int64_t)totalBytesExpectedToWrite{ + + self.downloadProgress.totalUnitCount = totalBytesExpectedToWrite; + self.downloadProgress.completedUnitCount = totalBytesWritten; +} + +- (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask + didResumeAtOffset:(int64_t)fileOffset +expectedTotalBytes:(int64_t)expectedTotalBytes{ + + self.downloadProgress.totalUnitCount = expectedTotalBytes; + self.downloadProgress.completedUnitCount = fileOffset; +} - (void)URLSession:(NSURLSession *)session downloadTask:(NSURLSessionDownloadTask *)downloadTask didFinishDownloadingToURL:(NSURL *)location { - NSError *fileManagerError = nil; self.downloadFileURL = nil; if (self.downloadTaskDidFinishDownloading) { self.downloadFileURL = self.downloadTaskDidFinishDownloading(session, downloadTask, location); if (self.downloadFileURL) { - [[NSFileManager defaultManager] moveItemAtURL:location toURL:self.downloadFileURL error:&fileManagerError]; + NSError *fileManagerError = nil; - if (fileManagerError) { + if (![[NSFileManager defaultManager] moveItemAtURL:location toURL:self.downloadFileURL error:&fileManagerError]) { [[NSNotificationCenter defaultCenter] postNotificationName:AFURLSessionDownloadTaskDidFailToMoveFileNotification object:downloadTask userInfo:fileManagerError.userInfo]; + } else { + [[NSNotificationCenter defaultCenter] postNotificationName:AFURLSessionDownloadTaskDidMoveFileSuccessfullyNotification object:downloadTask userInfo:nil]; } } } @@ -413,7 +380,7 @@ + (void)load { 8) Set the current class to the super class, and repeat steps 3-8 */ NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration ephemeralSessionConfiguration]; - NSURLSession * session = [NSURLSession sessionWithConfiguration:configuration]; + NSURLSession *session = [NSURLSession sessionWithConfiguration:configuration]; #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wnonnull" NSURLSessionDataTask *localDataTask = [session dataTaskWithURL:nil]; @@ -487,12 +454,15 @@ @interface AFURLSessionManager () @property (readwrite, nonatomic, strong) NSLock *lock; @property (readwrite, nonatomic, copy) AFURLSessionDidBecomeInvalidBlock sessionDidBecomeInvalid; @property (readwrite, nonatomic, copy) AFURLSessionDidReceiveAuthenticationChallengeBlock sessionDidReceiveAuthenticationChallenge; -@property (readwrite, nonatomic, copy) AFURLSessionDidFinishEventsForBackgroundURLSessionBlock didFinishEventsForBackgroundURLSession; +@property (readwrite, nonatomic, copy) AFURLSessionDidFinishEventsForBackgroundURLSessionBlock didFinishEventsForBackgroundURLSession AF_API_UNAVAILABLE(macos); @property (readwrite, nonatomic, copy) AFURLSessionTaskWillPerformHTTPRedirectionBlock taskWillPerformHTTPRedirection; -@property (readwrite, nonatomic, copy) AFURLSessionTaskDidReceiveAuthenticationChallengeBlock taskDidReceiveAuthenticationChallenge; +@property (readwrite, nonatomic, copy) AFURLSessionTaskAuthenticationChallengeBlock authenticationChallengeHandler; @property (readwrite, nonatomic, copy) AFURLSessionTaskNeedNewBodyStreamBlock taskNeedNewBodyStream; @property (readwrite, nonatomic, copy) AFURLSessionTaskDidSendBodyDataBlock taskDidSendBodyData; @property (readwrite, nonatomic, copy) AFURLSessionTaskDidCompleteBlock taskDidComplete; +#if AF_CAN_INCLUDE_SESSION_TASK_METRICS +@property (readwrite, nonatomic, copy) AFURLSessionTaskDidFinishCollectingMetricsBlock taskDidFinishCollectingMetrics AF_API_AVAILABLE(ios(10), macosx(10.12), watchos(3), tvos(10)); +#endif @property (readwrite, nonatomic, copy) AFURLSessionDataTaskDidReceiveResponseBlock dataTaskDidReceiveResponse; @property (readwrite, nonatomic, copy) AFURLSessionDataTaskDidBecomeDownloadTaskBlock dataTaskDidBecomeDownloadTask; @property (readwrite, nonatomic, copy) AFURLSessionDataTaskDidReceiveDataBlock dataTaskDidReceiveData; @@ -523,8 +493,6 @@ - (instancetype)initWithSessionConfiguration:(NSURLSessionConfiguration *)config self.operationQueue = [[NSOperationQueue alloc] init]; self.operationQueue.maxConcurrentOperationCount = 1; - self.session = [NSURLSession sessionWithConfiguration:self.sessionConfiguration delegate:self delegateQueue:self.operationQueue]; - self.responseSerializer = [AFJSONResponseSerializer serializer]; self.securityPolicy = [AFSecurityPolicy defaultPolicy]; @@ -561,6 +529,19 @@ - (void)dealloc { #pragma mark - +- (NSURLSession *)session { + + @synchronized (self) { + if (!_session) { + _session = [NSURLSession sessionWithConfiguration:self.sessionConfiguration delegate:self delegateQueue:self.operationQueue]; + } + } + return _session; +} + +#pragma mark - + + - (NSString *)taskDescriptionForSessionTasks { return [NSString stringWithFormat:@"%p", self]; } @@ -608,7 +589,6 @@ - (void)setDelegate:(AFURLSessionManagerTaskDelegate *)delegate [self.lock lock]; self.mutableTaskDelegatesKeyedByTaskIdentifier[@(task.taskIdentifier)] = delegate; - [delegate setupProgressForTask:task]; [self addNotificationObserverForTask:task]; [self.lock unlock]; } @@ -618,7 +598,7 @@ - (void)addDelegateForDataTask:(NSURLSessionDataTask *)dataTask downloadProgress:(nullable void (^)(NSProgress *downloadProgress)) downloadProgressBlock completionHandler:(void (^)(NSURLResponse *response, id responseObject, NSError *error))completionHandler { - AFURLSessionManagerTaskDelegate *delegate = [[AFURLSessionManagerTaskDelegate alloc] init]; + AFURLSessionManagerTaskDelegate *delegate = [[AFURLSessionManagerTaskDelegate alloc] initWithTask:dataTask]; delegate.manager = self; delegate.completionHandler = completionHandler; @@ -633,7 +613,7 @@ - (void)addDelegateForUploadTask:(NSURLSessionUploadTask *)uploadTask progress:(void (^)(NSProgress *uploadProgress)) uploadProgressBlock completionHandler:(void (^)(NSURLResponse *response, id responseObject, NSError *error))completionHandler { - AFURLSessionManagerTaskDelegate *delegate = [[AFURLSessionManagerTaskDelegate alloc] init]; + AFURLSessionManagerTaskDelegate *delegate = [[AFURLSessionManagerTaskDelegate alloc] initWithTask:uploadTask]; delegate.manager = self; delegate.completionHandler = completionHandler; @@ -649,7 +629,7 @@ - (void)addDelegateForDownloadTask:(NSURLSessionDownloadTask *)downloadTask destination:(NSURL * (^)(NSURL *targetPath, NSURLResponse *response))destination completionHandler:(void (^)(NSURLResponse *response, NSURL *filePath, NSError *error))completionHandler { - AFURLSessionManagerTaskDelegate *delegate = [[AFURLSessionManagerTaskDelegate alloc] init]; + AFURLSessionManagerTaskDelegate *delegate = [[AFURLSessionManagerTaskDelegate alloc] initWithTask:downloadTask]; delegate.manager = self; delegate.completionHandler = completionHandler; @@ -669,9 +649,7 @@ - (void)addDelegateForDownloadTask:(NSURLSessionDownloadTask *)downloadTask - (void)removeDelegateForTask:(NSURLSessionTask *)task { NSParameterAssert(task); - AFURLSessionManagerTaskDelegate *delegate = [self delegateForTask:task]; [self.lock lock]; - [delegate cleanUpProgressForTask:task]; [self removeNotificationObserverForTask:task]; [self.mutableTaskDelegatesKeyedByTaskIdentifier removeObjectForKey:@(task.taskIdentifier)]; [self.lock unlock]; @@ -719,14 +697,15 @@ - (NSArray *)downloadTasks { #pragma mark - -- (void)invalidateSessionCancelingTasks:(BOOL)cancelPendingTasks { - dispatch_async(dispatch_get_main_queue(), ^{ - if (cancelPendingTasks) { - [self.session invalidateAndCancel]; - } else { - [self.session finishTasksAndInvalidate]; - } - }); +- (void)invalidateSessionCancelingTasks:(BOOL)cancelPendingTasks resetSession:(BOOL)resetSession { + if (cancelPendingTasks) { + [self.session invalidateAndCancel]; + } else { + [self.session finishTasksAndInvalidate]; + } + if (resetSession) { + self.session = nil; + } } #pragma mark - @@ -750,21 +729,12 @@ - (void)removeNotificationObserverForTask:(NSURLSessionTask *)task { #pragma mark - -- (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request - completionHandler:(void (^)(NSURLResponse *response, id responseObject, NSError *error))completionHandler -{ - return [self dataTaskWithRequest:request uploadProgress:nil downloadProgress:nil completionHandler:completionHandler]; -} - - (NSURLSessionDataTask *)dataTaskWithRequest:(NSURLRequest *)request uploadProgress:(nullable void (^)(NSProgress *uploadProgress)) uploadProgressBlock downloadProgress:(nullable void (^)(NSProgress *downloadProgress)) downloadProgressBlock completionHandler:(nullable void (^)(NSURLResponse *response, id _Nullable responseObject, NSError * _Nullable error))completionHandler { - __block NSURLSessionDataTask *dataTask = nil; - url_session_manager_create_task_safely(^{ - dataTask = [self.session dataTaskWithRequest:request]; - }); + NSURLSessionDataTask *dataTask = [self.session dataTaskWithRequest:request]; [self addDelegateForDataTask:dataTask uploadProgress:uploadProgressBlock downloadProgress:downloadProgressBlock completionHandler:completionHandler]; @@ -778,19 +748,14 @@ - (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request progress:(void (^)(NSProgress *uploadProgress)) uploadProgressBlock completionHandler:(void (^)(NSURLResponse *response, id responseObject, NSError *error))completionHandler { - __block NSURLSessionUploadTask *uploadTask = nil; - url_session_manager_create_task_safely(^{ - uploadTask = [self.session uploadTaskWithRequest:request fromFile:fileURL]; - }); - - if (!uploadTask && self.attemptsToRecreateUploadTasksForBackgroundSessions && self.session.configuration.identifier) { - for (NSUInteger attempts = 0; !uploadTask && attempts < AFMaximumNumberOfAttemptsToRecreateBackgroundSessionUploadTask; attempts++) { - uploadTask = [self.session uploadTaskWithRequest:request fromFile:fileURL]; - } + NSURLSessionUploadTask *uploadTask = [self.session uploadTaskWithRequest:request fromFile:fileURL]; + + if (uploadTask) { + [self addDelegateForUploadTask:uploadTask + progress:uploadProgressBlock + completionHandler:completionHandler]; } - [self addDelegateForUploadTask:uploadTask progress:uploadProgressBlock completionHandler:completionHandler]; - return uploadTask; } @@ -799,11 +764,8 @@ - (NSURLSessionUploadTask *)uploadTaskWithRequest:(NSURLRequest *)request progress:(void (^)(NSProgress *uploadProgress)) uploadProgressBlock completionHandler:(void (^)(NSURLResponse *response, id responseObject, NSError *error))completionHandler { - __block NSURLSessionUploadTask *uploadTask = nil; - url_session_manager_create_task_safely(^{ - uploadTask = [self.session uploadTaskWithRequest:request fromData:bodyData]; - }); - + NSURLSessionUploadTask *uploadTask = [self.session uploadTaskWithRequest:request fromData:bodyData]; + [self addDelegateForUploadTask:uploadTask progress:uploadProgressBlock completionHandler:completionHandler]; return uploadTask; @@ -813,10 +775,7 @@ - (NSURLSessionUploadTask *)uploadTaskWithStreamedRequest:(NSURLRequest *)reques progress:(void (^)(NSProgress *uploadProgress)) uploadProgressBlock completionHandler:(void (^)(NSURLResponse *response, id responseObject, NSError *error))completionHandler { - __block NSURLSessionUploadTask *uploadTask = nil; - url_session_manager_create_task_safely(^{ - uploadTask = [self.session uploadTaskWithStreamedRequest:request]; - }); + NSURLSessionUploadTask *uploadTask = [self.session uploadTaskWithStreamedRequest:request]; [self addDelegateForUploadTask:uploadTask progress:uploadProgressBlock completionHandler:completionHandler]; @@ -830,11 +789,8 @@ - (NSURLSessionDownloadTask *)downloadTaskWithRequest:(NSURLRequest *)request destination:(NSURL * (^)(NSURL *targetPath, NSURLResponse *response))destination completionHandler:(void (^)(NSURLResponse *response, NSURL *filePath, NSError *error))completionHandler { - __block NSURLSessionDownloadTask *downloadTask = nil; - url_session_manager_create_task_safely(^{ - downloadTask = [self.session downloadTaskWithRequest:request]; - }); - + NSURLSessionDownloadTask *downloadTask = [self.session downloadTaskWithRequest:request]; + [self addDelegateForDownloadTask:downloadTask progress:downloadProgressBlock destination:destination completionHandler:completionHandler]; return downloadTask; @@ -845,10 +801,7 @@ - (NSURLSessionDownloadTask *)downloadTaskWithResumeData:(NSData *)resumeData destination:(NSURL * (^)(NSURL *targetPath, NSURLResponse *response))destination completionHandler:(void (^)(NSURLResponse *response, NSURL *filePath, NSError *error))completionHandler { - __block NSURLSessionDownloadTask *downloadTask = nil; - url_session_manager_create_task_safely(^{ - downloadTask = [self.session downloadTaskWithResumeData:resumeData]; - }); + NSURLSessionDownloadTask *downloadTask = [self.session downloadTaskWithResumeData:resumeData]; [self addDelegateForDownloadTask:downloadTask progress:downloadProgressBlock destination:destination completionHandler:completionHandler]; @@ -874,9 +827,11 @@ - (void)setSessionDidReceiveAuthenticationChallengeBlock:(NSURLSessionAuthChalle self.sessionDidReceiveAuthenticationChallenge = block; } +#if !TARGET_OS_OSX - (void)setDidFinishEventsForBackgroundURLSessionBlock:(void (^)(NSURLSession *session))block { self.didFinishEventsForBackgroundURLSession = block; } +#endif #pragma mark - @@ -888,10 +843,6 @@ - (void)setTaskWillPerformHTTPRedirectionBlock:(NSURLRequest * (^)(NSURLSession self.taskWillPerformHTTPRedirection = block; } -- (void)setTaskDidReceiveAuthenticationChallengeBlock:(NSURLSessionAuthChallengeDisposition (^)(NSURLSession *session, NSURLSessionTask *task, NSURLAuthenticationChallenge *challenge, NSURLCredential * __autoreleasing *credential))block { - self.taskDidReceiveAuthenticationChallenge = block; -} - - (void)setTaskDidSendBodyDataBlock:(void (^)(NSURLSession *session, NSURLSessionTask *task, int64_t bytesSent, int64_t totalBytesSent, int64_t totalBytesExpectedToSend))block { self.taskDidSendBodyData = block; } @@ -900,6 +851,12 @@ - (void)setTaskDidCompleteBlock:(void (^)(NSURLSession *session, NSURLSessionTas self.taskDidComplete = block; } +#if AF_CAN_INCLUDE_SESSION_TASK_METRICS +- (void)setTaskDidFinishCollectingMetricsBlock:(void (^)(NSURLSession * _Nonnull, NSURLSessionTask * _Nonnull, NSURLSessionTaskMetrics * _Nullable))block AF_API_AVAILABLE(ios(10), macosx(10.12), watchos(3), tvos(10)) { + self.taskDidFinishCollectingMetrics = block; +} +#endif + #pragma mark - - (void)setDataTaskDidReceiveResponseBlock:(NSURLSessionResponseDisposition (^)(NSURLSession *session, NSURLSessionDataTask *dataTask, NSURLResponse *response))block { @@ -939,15 +896,20 @@ - (NSString *)description { } - (BOOL)respondsToSelector:(SEL)selector { - if (selector == @selector(URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:)) { + if (selector == @selector(URLSession:didReceiveChallenge:completionHandler:)) { + return self.sessionDidReceiveAuthenticationChallenge != nil; + } else if (selector == @selector(URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:)) { return self.taskWillPerformHTTPRedirection != nil; } else if (selector == @selector(URLSession:dataTask:didReceiveResponse:completionHandler:)) { return self.dataTaskDidReceiveResponse != nil; } else if (selector == @selector(URLSession:dataTask:willCacheResponse:completionHandler:)) { return self.dataTaskWillCacheResponse != nil; - } else if (selector == @selector(URLSessionDidFinishEventsForBackgroundURLSession:)) { + } +#if !TARGET_OS_OSX + else if (selector == @selector(URLSessionDidFinishEventsForBackgroundURLSession:)) { return self.didFinishEventsForBackgroundURLSession != nil; } +#endif return [[self class] instancesRespondToSelector:selector]; } @@ -968,27 +930,10 @@ - (void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential *credential))completionHandler { - NSURLSessionAuthChallengeDisposition disposition = NSURLSessionAuthChallengePerformDefaultHandling; - __block NSURLCredential *credential = nil; + NSAssert(self.sessionDidReceiveAuthenticationChallenge != nil, @"`respondsToSelector:` implementation forces `URLSession:didReceiveChallenge:completionHandler:` to be called only if `self.sessionDidReceiveAuthenticationChallenge` is not nil"); - if (self.sessionDidReceiveAuthenticationChallenge) { - disposition = self.sessionDidReceiveAuthenticationChallenge(session, challenge, &credential); - } else { - if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]) { - if ([self.securityPolicy evaluateServerTrust:challenge.protectionSpace.serverTrust forDomain:challenge.protectionSpace.host]) { - credential = [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust]; - if (credential) { - disposition = NSURLSessionAuthChallengeUseCredential; - } else { - disposition = NSURLSessionAuthChallengePerformDefaultHandling; - } - } else { - disposition = NSURLSessionAuthChallengeRejectProtectionSpace; - } - } else { - disposition = NSURLSessionAuthChallengePerformDefaultHandling; - } - } + NSURLCredential *credential = nil; + NSURLSessionAuthChallengeDisposition disposition = self.sessionDidReceiveAuthenticationChallenge(session, challenge, &credential); if (completionHandler) { completionHandler(disposition, credential); @@ -1019,21 +964,40 @@ - (void)URLSession:(NSURLSession *)session didReceiveChallenge:(NSURLAuthenticationChallenge *)challenge completionHandler:(void (^)(NSURLSessionAuthChallengeDisposition disposition, NSURLCredential *credential))completionHandler { + BOOL evaluateServerTrust = NO; NSURLSessionAuthChallengeDisposition disposition = NSURLSessionAuthChallengePerformDefaultHandling; - __block NSURLCredential *credential = nil; + NSURLCredential *credential = nil; - if (self.taskDidReceiveAuthenticationChallenge) { - disposition = self.taskDidReceiveAuthenticationChallenge(session, task, challenge, &credential); + if (self.authenticationChallengeHandler) { + id result = self.authenticationChallengeHandler(session, task, challenge, completionHandler); + if (result == nil) { + return; + } else if ([result isKindOfClass:NSError.class]) { + objc_setAssociatedObject(task, AuthenticationChallengeErrorKey, result, OBJC_ASSOCIATION_RETAIN); + disposition = NSURLSessionAuthChallengeCancelAuthenticationChallenge; + } else if ([result isKindOfClass:NSURLCredential.class]) { + credential = result; + disposition = NSURLSessionAuthChallengeUseCredential; + } else if ([result isKindOfClass:NSNumber.class]) { + disposition = [result integerValue]; + NSAssert(disposition == NSURLSessionAuthChallengePerformDefaultHandling || disposition == NSURLSessionAuthChallengeCancelAuthenticationChallenge || disposition == NSURLSessionAuthChallengeRejectProtectionSpace, @""); + evaluateServerTrust = disposition == NSURLSessionAuthChallengePerformDefaultHandling && [challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]; + } else { + @throw [NSException exceptionWithName:@"Invalid Return Value" reason:@"The return value from the authentication challenge handler must be nil, an NSError, an NSURLCredential or an NSNumber." userInfo:nil]; + } } else { - if ([challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]) { - if ([self.securityPolicy evaluateServerTrust:challenge.protectionSpace.serverTrust forDomain:challenge.protectionSpace.host]) { - disposition = NSURLSessionAuthChallengeUseCredential; - credential = [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust]; - } else { - disposition = NSURLSessionAuthChallengeRejectProtectionSpace; - } + evaluateServerTrust = [challenge.protectionSpace.authenticationMethod isEqualToString:NSURLAuthenticationMethodServerTrust]; + } + + if (evaluateServerTrust) { + if ([self.securityPolicy evaluateServerTrust:challenge.protectionSpace.serverTrust forDomain:challenge.protectionSpace.host]) { + disposition = NSURLSessionAuthChallengeUseCredential; + credential = [NSURLCredential credentialForTrust:challenge.protectionSpace.serverTrust]; } else { - disposition = NSURLSessionAuthChallengePerformDefaultHandling; + objc_setAssociatedObject(task, AuthenticationChallengeErrorKey, + [self serverTrustErrorForServerTrust:challenge.protectionSpace.serverTrust url:task.currentRequest.URL], + OBJC_ASSOCIATION_RETAIN); + disposition = NSURLSessionAuthChallengeCancelAuthenticationChallenge; } } @@ -1042,6 +1006,31 @@ - (void)URLSession:(NSURLSession *)session } } +- (nonnull NSError *)serverTrustErrorForServerTrust:(nullable SecTrustRef)serverTrust url:(nullable NSURL *)url +{ + NSBundle *CFNetworkBundle = [NSBundle bundleWithIdentifier:@"com.apple.CFNetwork"]; + NSString *defaultValue = @"The certificate for this server is invalid. You might be connecting to a server that is pretending to be “%@” which could put your confidential information at risk."; + NSString *descriptionFormat = NSLocalizedStringWithDefaultValue(@"Err-1202.w", nil, CFNetworkBundle, defaultValue, @"") ?: defaultValue; + NSString *localizedDescription = [descriptionFormat componentsSeparatedByString:@"%@"].count <= 2 ? [NSString localizedStringWithFormat:descriptionFormat, url.host] : descriptionFormat; + NSMutableDictionary *userInfo = [@{ + NSLocalizedDescriptionKey: localizedDescription + } mutableCopy]; + + if (serverTrust) { + userInfo[NSURLErrorFailingURLPeerTrustErrorKey] = (__bridge id)serverTrust; + } + + if (url) { + userInfo[NSURLErrorFailingURLErrorKey] = url; + + if (url.absoluteString) { + userInfo[NSURLErrorFailingURLStringErrorKey] = url.absoluteString; + } + } + + return [NSError errorWithDomain:NSURLErrorDomain code:NSURLErrorServerCertificateUntrusted userInfo:userInfo]; +} + - (void)URLSession:(NSURLSession *)session task:(NSURLSessionTask *)task needNewBodyStream:(void (^)(NSInputStream *bodyStream))completionHandler @@ -1067,12 +1056,18 @@ - (void)URLSession:(NSURLSession *)session { int64_t totalUnitCount = totalBytesExpectedToSend; - if(totalUnitCount == NSURLSessionTransferSizeUnknown) { + if (totalUnitCount == NSURLSessionTransferSizeUnknown) { NSString *contentLength = [task.originalRequest valueForHTTPHeaderField:@"Content-Length"]; - if(contentLength) { + if (contentLength) { totalUnitCount = (int64_t) [contentLength longLongValue]; } } + + AFURLSessionManagerTaskDelegate *delegate = [self delegateForTask:task]; + + if (delegate) { + [delegate URLSession:session task:task didSendBodyData:bytesSent totalBytesSent:totalBytesSent totalBytesExpectedToSend:totalBytesExpectedToSend]; + } if (self.taskDidSendBodyData) { self.taskDidSendBodyData(session, task, bytesSent, totalBytesSent, totalUnitCount); @@ -1097,6 +1092,23 @@ - (void)URLSession:(NSURLSession *)session } } +#if AF_CAN_INCLUDE_SESSION_TASK_METRICS +- (void)URLSession:(NSURLSession *)session + task:(NSURLSessionTask *)task +didFinishCollectingMetrics:(NSURLSessionTaskMetrics *)metrics AF_API_AVAILABLE(ios(10), macosx(10.12), watchos(3), tvos(10)) +{ + AFURLSessionManagerTaskDelegate *delegate = [self delegateForTask:task]; + // Metrics may fire after URLSession:task:didCompleteWithError: is called, delegate may be nil + if (delegate) { + [delegate URLSession:session task:task didFinishCollectingMetrics:metrics]; + } + + if (self.taskDidFinishCollectingMetrics) { + self.taskDidFinishCollectingMetrics(session, task, metrics); + } +} +#endif + #pragma mark - NSURLSessionDataDelegate - (void)URLSession:(NSURLSession *)session @@ -1159,6 +1171,7 @@ - (void)URLSession:(NSURLSession *)session } } +#if !TARGET_OS_OSX - (void)URLSessionDidFinishEventsForBackgroundURLSession:(NSURLSession *)session { if (self.didFinishEventsForBackgroundURLSession) { dispatch_async(dispatch_get_main_queue(), ^{ @@ -1166,6 +1179,7 @@ - (void)URLSessionDidFinishEventsForBackgroundURLSession:(NSURLSession *)session }); } } +#endif #pragma mark - NSURLSessionDownloadDelegate @@ -1179,9 +1193,11 @@ - (void)URLSession:(NSURLSession *)session if (fileURL) { delegate.downloadFileURL = fileURL; NSError *error = nil; - [[NSFileManager defaultManager] moveItemAtURL:location toURL:fileURL error:&error]; - if (error) { + + if (![[NSFileManager defaultManager] moveItemAtURL:location toURL:fileURL error:&error]) { [[NSNotificationCenter defaultCenter] postNotificationName:AFURLSessionDownloadTaskDidFailToMoveFileNotification object:downloadTask userInfo:error.userInfo]; + } else { + [[NSNotificationCenter defaultCenter] postNotificationName:AFURLSessionDownloadTaskDidMoveFileSuccessfullyNotification object:downloadTask userInfo:nil]; } return; @@ -1199,6 +1215,13 @@ - (void)URLSession:(NSURLSession *)session totalBytesWritten:(int64_t)totalBytesWritten totalBytesExpectedToWrite:(int64_t)totalBytesExpectedToWrite { + + AFURLSessionManagerTaskDelegate *delegate = [self delegateForTask:downloadTask]; + + if (delegate) { + [delegate URLSession:session downloadTask:downloadTask didWriteData:bytesWritten totalBytesWritten:totalBytesWritten totalBytesExpectedToWrite:totalBytesExpectedToWrite]; + } + if (self.downloadTaskDidWriteData) { self.downloadTaskDidWriteData(session, downloadTask, bytesWritten, totalBytesWritten, totalBytesExpectedToWrite); } @@ -1209,6 +1232,13 @@ - (void)URLSession:(NSURLSession *)session didResumeAtOffset:(int64_t)fileOffset expectedTotalBytes:(int64_t)expectedTotalBytes { + + AFURLSessionManagerTaskDelegate *delegate = [self delegateForTask:downloadTask]; + + if (delegate) { + [delegate URLSession:session downloadTask:downloadTask didResumeAtOffset:fileOffset expectedTotalBytes:expectedTotalBytes]; + } + if (self.downloadTaskDidResume) { self.downloadTaskDidResume(session, downloadTask, fileOffset, expectedTotalBytes); } diff --git a/Pods/AFNetworking/LICENSE b/Pods/AFNetworking/LICENSE index 91f125b0..f611f42f 100644 --- a/Pods/AFNetworking/LICENSE +++ b/Pods/AFNetworking/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/AFNetworking/README.md b/Pods/AFNetworking/README.md index f7846814..d193dfe8 100644 --- a/Pods/AFNetworking/README.md +++ b/Pods/AFNetworking/README.md @@ -2,25 +2,20 @@ AFNetworking

-[![Build Status](https://travis-ci.org/AFNetworking/AFNetworking.svg)](https://travis-ci.org/AFNetworking/AFNetworking) -[![codecov.io](https://codecov.io/github/AFNetworking/AFNetworking/coverage.svg?branch=master)](https://codecov.io/github/AFNetworking/AFNetworking?branch=master) -[![Cocoapods Compatible](https://img.shields.io/cocoapods/v/AFNetworking.svg)](https://img.shields.io/cocoapods/v/AFNetworking.svg) +[![Build Status](https://github.com/AFNetworking/AFNetworking/workflows/AFNetworking%20CI/badge.svg?branch=master)](https://github.com/AFNetworking/AFNetworking/actions) +[![CocoaPods Compatible](https://img.shields.io/cocoapods/v/AFNetworking.svg)](https://img.shields.io/cocoapods/v/AFNetworking.svg) [![Carthage Compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage) [![Platform](https://img.shields.io/cocoapods/p/AFNetworking.svg?style=flat)](http://cocoadocs.org/docsets/AFNetworking) [![Twitter](https://img.shields.io/badge/twitter-@AFNetworking-blue.svg?style=flat)](http://twitter.com/AFNetworking) -AFNetworking is a delightful networking library for iOS and Mac OS X. It's built on top of the [Foundation URL Loading System](http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/URLLoadingSystem/URLLoadingSystem.html), extending the powerful high-level networking abstractions built into Cocoa. It has a modular architecture with well-designed, feature-rich APIs that are a joy to use. +AFNetworking is a delightful networking library for iOS, macOS, watchOS, and tvOS. It's built on top of the [Foundation URL Loading System](https://developer.apple.com/documentation/foundation/url_loading_system), extending the powerful high-level networking abstractions built into Cocoa. It has a modular architecture with well-designed, feature-rich APIs that are a joy to use. Perhaps the most important feature of all, however, is the amazing community of developers who use and contribute to AFNetworking every day. AFNetworking powers some of the most popular and critically-acclaimed apps on the iPhone, iPad, and Mac. -Choose AFNetworking for your next project, or migrate over your existing projects—you'll be happy you did! - ## How To Get Started - [Download AFNetworking](https://github.com/AFNetworking/AFNetworking/archive/master.zip) and try out the included Mac and iPhone example apps - Read the ["Getting Started" guide](https://github.com/AFNetworking/AFNetworking/wiki/Getting-Started-with-AFNetworking), [FAQ](https://github.com/AFNetworking/AFNetworking/wiki/AFNetworking-FAQ), or [other articles on the Wiki](https://github.com/AFNetworking/AFNetworking/wiki) -- Check out the [documentation](http://cocoadocs.org/docsets/AFNetworking/) for a comprehensive look at all of the APIs available in AFNetworking -- Read the [AFNetworking 3.0 Migration Guide](https://github.com/AFNetworking/AFNetworking/wiki/AFNetworking-3.0-Migration-Guide) for an overview of the architectural changes from 2.0. ## Communication @@ -35,61 +30,44 @@ AFNetworking supports multiple methods for installing the library in a project. ## Installation with CocoaPods -[CocoaPods](http://cocoapods.org) is a dependency manager for Objective-C, which automates and simplifies the process of using 3rd-party libraries like AFNetworking in your projects. See the ["Getting Started" guide for more information](https://github.com/AFNetworking/AFNetworking/wiki/Getting-Started-with-AFNetworking). You can install it with the following command: - -```bash -$ gem install cocoapods -``` - -> CocoaPods 0.39.0+ is required to build AFNetworking 3.0.0+. - -#### Podfile - To integrate AFNetworking into your Xcode project using CocoaPods, specify it in your `Podfile`: ```ruby -source 'https://github.com/CocoaPods/Specs.git' -platform :ios, '8.0' - -pod 'AFNetworking', '~> 3.0' +pod 'AFNetworking', '~> 4.0' ``` -Then, run the following command: +### Installation with Swift Package Manager -```bash -$ pod install -``` +Once you have your Swift package set up, adding AFNetworking as a dependency is as easy as adding it to the `dependencies` value of your `Package.swift`. -### Installation with Carthage - -[Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. +```swift +dependencies: [ + .package(url: "https://github.com/AFNetworking/AFNetworking.git", .upToNextMajor(from: "4.0.0")) +] +``` -You can install Carthage with [Homebrew](http://brew.sh/) using the following command: +> Note: AFNetworking's Swift package does not include it's UIKit extensions. -```bash -$ brew update -$ brew install carthage -``` +### Installation with Carthage -To integrate AFNetworking into your Xcode project using Carthage, specify it in your `Cartfile`: +[Carthage](https://github.com/Carthage/Carthage) is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks. To integrate AFNetworking, add the following to your `Cartfile`. ```ogdl -github "AFNetworking/AFNetworking" ~> 3.0 +github "AFNetworking/AFNetworking" ~> 4.0 ``` -Run `carthage` to build the framework and drag the built `AFNetworking.framework` into your Xcode project. - ## Requirements -| AFNetworking Version | Minimum iOS Target | Minimum OS X Target | Minimum watchOS Target | Minimum tvOS Target | Notes | +| AFNetworking Version | Minimum iOS Target | Minimum macOS Target | Minimum watchOS Target | Minimum tvOS Target | Notes | |:--------------------:|:---------------------------:|:----------------------------:|:----------------------------:|:----------------------------:|:-------------------------------------------------------------------------:| +| 4.x | iOS 9 | macOS 10.10 | watchOS 2.0 | tvOS 9.0 | Xcode 11+ is required. | | 3.x | iOS 7 | OS X 10.9 | watchOS 2.0 | tvOS 9.0 | Xcode 7+ is required. `NSURLConnectionOperation` support has been removed. | | 2.6 -> 2.6.3 | iOS 7 | OS X 10.9 | watchOS 2.0 | n/a | Xcode 7+ is required. | | 2.0 -> 2.5.4 | iOS 6 | OS X 10.8 | n/a | n/a | Xcode 5+ is required. `NSURLSession` subspec requires iOS 7 or OS X 10.9. | | 1.x | iOS 5 | Mac OS X 10.7 | n/a | n/a | | 0.10.x | iOS 4 | Mac OS X 10.6 | n/a | n/a | -(OS X projects must support [64-bit with modern Cocoa runtime](https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjCRuntimeGuide/Articles/ocrtVersionsPlatforms.html)). +(macOS projects must support [64-bit with modern Cocoa runtime](https://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/ObjCRuntimeGuide/Articles/ocrtVersionsPlatforms.html)). > Programming in Swift? Try [Alamofire](https://github.com/Alamofire/Alamofire) for a more conventional set of APIs. @@ -110,7 +88,7 @@ Run `carthage` to build the framework and drag the built `AFNetworking.framework - `AFHTTPResponseSerializer` - `AFJSONResponseSerializer` - `AFXMLParserResponseSerializer` - - `AFXMLDocumentResponseSerializer` _(Mac OS X)_ + - `AFXMLDocumentResponseSerializer` _(macOS)_ - `AFPropertyListResponseSerializer` - `AFImageResponseSerializer` - `AFCompoundResponseSerializer` @@ -201,7 +179,7 @@ uploadTask = [manager NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:configuration]; -NSURL *URL = [NSURL URLWithString:@"http://example.com/upload"]; +NSURL *URL = [NSURL URLWithString:@"http://httpbin.org/get"]; NSURLRequest *request = [NSURLRequest requestWithURL:URL]; NSURLSessionDataTask *dataTask = [manager dataTaskWithRequest:request completionHandler:^(NSURLResponse *response, id responseObject, NSError *error) { @@ -236,7 +214,7 @@ NSDictionary *parameters = @{@"foo": @"bar", @"baz": @[@1, @2, @3]}; #### URL Form Parameter Encoding ```objective-c -[[AFHTTPRequestSerializer serializer] requestWithMethod:@"POST" URLString:URLString parameters:parameters]; +[[AFHTTPRequestSerializer serializer] requestWithMethod:@"POST" URLString:URLString parameters:parameters error:nil]; ``` POST http://example.com/ @@ -247,7 +225,7 @@ NSDictionary *parameters = @{@"foo": @"bar", @"baz": @[@1, @2, @3]}; #### JSON Parameter Encoding ```objective-c -[[AFJSONRequestSerializer serializer] requestWithMethod:@"POST" URLString:URLString parameters:parameters]; +[[AFJSONRequestSerializer serializer] requestWithMethod:@"POST" URLString:URLString parameters:parameters error:nil]; ``` POST http://example.com/ @@ -317,4 +295,4 @@ If you believe you have identified a security vulnerability with AFNetworking, y ## License -AFNetworking is released under the MIT license. See LICENSE for details. +AFNetworking is released under the MIT license. See [LICENSE](https://github.com/AFNetworking/AFNetworking/blob/master/LICENSE) for details. diff --git a/Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.h b/Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.h index e89b951e..1a27bb43 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.h @@ -1,5 +1,5 @@ // AFAutoPurgingImageCache.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -72,6 +72,17 @@ NS_ASSUME_NONNULL_BEGIN */ @protocol AFImageRequestCache +/** + Asks if the image should be cached using an identifier created from the request and additional identifier. + + @param image The image to be cached. + @param request The unique URL request identifing the image asset. + @param identifier The additional identifier to apply to the URL request to identify the image. + + @return A BOOL indicating whether or not the image should be added to the cache. YES will cache, NO will prevent caching. + */ +- (BOOL)shouldCacheImage:(UIImage *)image forRequest:(NSURLRequest *)request withAdditionalIdentifier:(nullable NSString *)identifier; + /** Adds the image to the cache using an identifier created from the request and additional identifier. @@ -135,7 +146,7 @@ NS_ASSUME_NONNULL_BEGIN after purge limit. @param memoryCapacity The total memory capacity of the cache in bytes. - @param preferredMemoryUsageAfterPurge The preferred memory usage after purge in bytes. + @param preferredMemoryCapacity The preferred memory usage after purge in bytes. @return The new `AutoPurgingImageCache` instance. */ diff --git a/Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.m b/Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.m index 326fe4f6..a09e87c8 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.m +++ b/Pods/AFNetworking/UIKit+AFNetworking/AFAutoPurgingImageCache.m @@ -1,5 +1,5 @@ // AFAutoPurgingImageCache.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -28,7 +28,7 @@ @interface AFCachedImage : NSObject @property (nonatomic, strong) UIImage *image; -@property (nonatomic, strong) NSString *identifier; +@property (nonatomic, copy) NSString *identifier; @property (nonatomic, assign) UInt64 totalBytes; @property (nonatomic, strong) NSDate *lastAccessDate; @property (nonatomic, assign) UInt64 currentMemoryUsage; @@ -37,21 +37,21 @@ @interface AFCachedImage : NSObject @implementation AFCachedImage --(instancetype)initWithImage:(UIImage *)image identifier:(NSString *)identifier { +- (instancetype)initWithImage:(UIImage *)image identifier:(NSString *)identifier { if (self = [self init]) { self.image = image; self.identifier = identifier; CGSize imageSize = CGSizeMake(image.size.width * image.scale, image.size.height * image.scale); CGFloat bytesPerPixel = 4.0; - CGFloat bytesPerRow = imageSize.width * bytesPerPixel; - self.totalBytes = (UInt64)bytesPerPixel * (UInt64)bytesPerRow; + CGFloat bytesPerSize = imageSize.width * imageSize.height; + self.totalBytes = (UInt64)bytesPerPixel * (UInt64)bytesPerSize; self.lastAccessDate = [NSDate date]; } return self; } -- (UIImage*)accessImage { +- (UIImage *)accessImage { self.lastAccessDate = [NSDate date]; return self.image; } @@ -134,7 +134,7 @@ - (void)addImage:(UIImage *)image withIdentifier:(NSString *)identifier { [self.cachedImages removeObjectForKey:cachedImage.identifier]; bytesPurged += cachedImage.totalBytes; if (bytesPurged >= bytesToPurge) { - break ; + break; } } self.currentMemoryUsage -= bytesPurged; @@ -196,6 +196,10 @@ - (NSString *)imageCacheKeyFromURLRequest:(NSURLRequest *)request withAdditional return key; } +- (BOOL)shouldCacheImage:(UIImage *)image forRequest:(NSURLRequest *)request withAdditionalIdentifier:(nullable NSString *)identifier { + return YES; +} + @end #endif diff --git a/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.h b/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.h index b35e1855..3bf5a320 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.h @@ -1,5 +1,5 @@ // AFImageDownloader.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -67,7 +67,7 @@ typedef NS_ENUM(NSInteger, AFImageDownloadPrioritization) { /** Defines the order prioritization of incoming download requests being inserted into the queue. `AFImageDownloadPrioritizationFIFO` by default. */ -@property (nonatomic, assign) AFImageDownloadPrioritization downloadPrioritizaton; +@property (nonatomic, assign) AFImageDownloadPrioritization downloadPrioritization; /** The shared default instance of `AFImageDownloader` initialized with default values. @@ -81,6 +81,11 @@ typedef NS_ENUM(NSInteger, AFImageDownloadPrioritization) { */ + (NSURLCache *)defaultURLCache; +/** + The default `NSURLSessionConfiguration` with common usage parameter values. + */ ++ (NSURLSessionConfiguration *)defaultURLSessionConfiguration; + /** Default initializer @@ -88,6 +93,15 @@ typedef NS_ENUM(NSInteger, AFImageDownloadPrioritization) { */ - (instancetype)init; +/** + Initializer with specific `URLSessionConfiguration` + + @param configuration The `NSURLSessionConfiguration` to be be used + + @return An instance of `AFImageDownloader` initialized with default values and custom `NSURLSessionConfiguration` + */ +- (instancetype)initWithSessionConfiguration:(NSURLSessionConfiguration *)configuration; + /** Initializes the `AFImageDownloader` instance with the given session manager, download prioritization, maximum active download count and image cache. @@ -129,7 +143,7 @@ typedef NS_ENUM(NSInteger, AFImageDownloadPrioritization) { task are executed in the order they were added. @param request The URL request. - @param request The identifier to use for the download receipt that will be created for this request. This must be a unique identifier that does not represent any other request. + @param receiptID The identifier to use for the download receipt that will be created for this request. This must be a unique identifier that does not represent any other request. @param success A block to be executed when the image data task finishes successfully. This block has no return value and takes three arguments: the request sent from the client, the response received from the server, and the image created from the response data of request. If the image was returned from cache, the response parameter will be `nil`. @param failure A block object to be executed when the image data task finishes unsuccessfully, or that finishes successfully. This block has no return value and takes three arguments: the request sent from the client, the response received from the server, and the error object describing the network or parsing error that occurred. diff --git a/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.m b/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.m index bab4c025..008a7828 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.m +++ b/Pods/AFNetworking/UIKit+AFNetworking/AFImageDownloader.m @@ -1,5 +1,5 @@ // AFImageDownloader.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -28,8 +28,8 @@ @interface AFImageDownloaderResponseHandler : NSObject @property (nonatomic, strong) NSUUID *uuid; -@property (nonatomic, copy) void (^successBlock)(NSURLRequest*, NSHTTPURLResponse*, UIImage*); -@property (nonatomic, copy) void (^failureBlock)(NSURLRequest*, NSHTTPURLResponse*, NSError*); +@property (nonatomic, copy) void (^successBlock)(NSURLRequest *, NSHTTPURLResponse *, UIImage *); +@property (nonatomic, copy) void (^failureBlock)(NSURLRequest *, NSHTTPURLResponse *, NSError *); @end @implementation AFImageDownloaderResponseHandler @@ -52,7 +52,8 @@ - (NSString *)description { @end @interface AFImageDownloaderMergedTask : NSObject -@property (nonatomic, strong) NSString *identifier; +@property (nonatomic, strong) NSString *URLIdentifier; +@property (nonatomic, strong) NSUUID *identifier; @property (nonatomic, strong) NSURLSessionDataTask *task; @property (nonatomic, strong) NSMutableArray *responseHandlers; @@ -60,20 +61,21 @@ @interface AFImageDownloaderMergedTask : NSObject @implementation AFImageDownloaderMergedTask -- (instancetype)initWithIdentifier:(NSString *)identifier task:(NSURLSessionDataTask *)task { +- (instancetype)initWithURLIdentifier:(NSString *)URLIdentifier identifier:(NSUUID *)identifier task:(NSURLSessionDataTask *)task { if (self = [self init]) { - self.identifier = identifier; + self.URLIdentifier = URLIdentifier; self.task = task; + self.identifier = identifier; self.responseHandlers = [[NSMutableArray alloc] init]; } return self; } -- (void)addResponseHandler:(AFImageDownloaderResponseHandler*)handler { +- (void)addResponseHandler:(AFImageDownloaderResponseHandler *)handler { [self.responseHandlers addObject:handler]; } -- (void)removeResponseHandler:(AFImageDownloaderResponseHandler*)handler { +- (void)removeResponseHandler:(AFImageDownloaderResponseHandler *)handler { [self.responseHandlers removeObject:handler]; } @@ -104,16 +106,28 @@ @interface AFImageDownloader () @end - @implementation AFImageDownloader + ++ (NSURLCache *)defaultURLCache { + NSUInteger memoryCapacity = 20 * 1024 * 1024; // 20MB + NSUInteger diskCapacity = 150 * 1024 * 1024; // 150MB + NSURL *cacheURL = [[[NSFileManager defaultManager] URLForDirectory:NSCachesDirectory + inDomain:NSUserDomainMask + appropriateForURL:nil + create:YES + error:nil] + URLByAppendingPathComponent:@"com.alamofire.imagedownloader"]; + #if TARGET_OS_MACCATALYST + return [[NSURLCache alloc] initWithMemoryCapacity:memoryCapacity + diskCapacity:diskCapacity + directoryURL:cacheURL]; #else -+ (NSURLCache *)defaultURLCache { - return [[NSURLCache alloc] initWithMemoryCapacity:20 * 1024 * 1024 - diskCapacity:150 * 1024 * 1024 - diskPath:@"com.alamofire.imagedownloader"]; -} + return [[NSURLCache alloc] initWithMemoryCapacity:memoryCapacity + diskCapacity:diskCapacity + diskPath:[cacheURL path]]; #endif +} + (NSURLSessionConfiguration *)defaultURLSessionConfiguration { NSURLSessionConfiguration *configuration = [NSURLSessionConfiguration defaultSessionConfiguration]; @@ -133,7 +147,11 @@ + (NSURLSessionConfiguration *)defaultURLSessionConfiguration { - (instancetype)init { NSURLSessionConfiguration *defaultConfiguration = [self.class defaultURLSessionConfiguration]; - AFHTTPSessionManager *sessionManager = [[AFHTTPSessionManager alloc] initWithSessionConfiguration:defaultConfiguration]; + return [self initWithSessionConfiguration:defaultConfiguration]; +} + +- (instancetype)initWithSessionConfiguration:(NSURLSessionConfiguration *)configuration { + AFHTTPSessionManager *sessionManager = [[AFHTTPSessionManager alloc] initWithSessionConfiguration:configuration]; sessionManager.responseSerializer = [AFImageResponseSerializer serializer]; return [self initWithSessionManager:sessionManager @@ -149,7 +167,7 @@ - (instancetype)initWithSessionManager:(AFHTTPSessionManager *)sessionManager if (self = [super init]) { self.sessionManager = sessionManager; - self.downloadPrioritizaton = downloadPrioritization; + self.downloadPrioritization = downloadPrioritization; self.maximumActiveDownloads = maximumActiveDownloads; self.imageCache = imageCache; @@ -183,15 +201,24 @@ - (nullable AFImageDownloadReceipt *)downloadImageForURLRequest:(NSURLRequest *) } - (nullable AFImageDownloadReceipt *)downloadImageForURLRequest:(NSURLRequest *)request - withReceiptID:(nonnull NSUUID *)receiptID + withReceiptID:(nonnull NSUUID *)receiptID success:(nullable void (^)(NSURLRequest *request, NSHTTPURLResponse * _Nullable response, UIImage *responseObject))success failure:(nullable void (^)(NSURLRequest *request, NSHTTPURLResponse * _Nullable response, NSError *error))failure { __block NSURLSessionDataTask *task = nil; dispatch_sync(self.synchronizationQueue, ^{ - NSString *identifier = request.URL.absoluteString; + NSString *URLIdentifier = request.URL.absoluteString; + if (URLIdentifier == nil) { + if (failure) { + NSError *error = [NSError errorWithDomain:NSURLErrorDomain code:NSURLErrorBadURL userInfo:nil]; + dispatch_async(dispatch_get_main_queue(), ^{ + failure(request, nil, error); + }); + } + return; + } // 1) Append the success and failure blocks to a pre-existing request if it already exists - AFImageDownloaderMergedTask *existingMergedTask = self.mergedTasks[identifier]; + AFImageDownloaderMergedTask *existingMergedTask = self.mergedTasks[URLIdentifier]; if (existingMergedTask != nil) { AFImageDownloaderResponseHandler *handler = [[AFImageDownloaderResponseHandler alloc] initWithUUID:receiptID success:success failure:failure]; [existingMergedTask addResponseHandler:handler]; @@ -220,34 +247,42 @@ - (nullable AFImageDownloadReceipt *)downloadImageForURLRequest:(NSURLRequest *) } // 3) Create the request and set up authentication, validation and response serialization + NSUUID *mergedTaskIdentifier = [NSUUID UUID]; NSURLSessionDataTask *createdTask; __weak __typeof__(self) weakSelf = self; createdTask = [self.sessionManager dataTaskWithRequest:request + uploadProgress:nil + downloadProgress:nil completionHandler:^(NSURLResponse * _Nonnull response, id _Nullable responseObject, NSError * _Nullable error) { dispatch_async(self.responseQueue, ^{ __strong __typeof__(weakSelf) strongSelf = weakSelf; - AFImageDownloaderMergedTask *mergedTask = [strongSelf safelyRemoveMergedTaskWithIdentifier:identifier]; - if (error) { - for (AFImageDownloaderResponseHandler *handler in mergedTask.responseHandlers) { - if (handler.failureBlock) { - dispatch_async(dispatch_get_main_queue(), ^{ - handler.failureBlock(request, (NSHTTPURLResponse*)response, error); - }); + AFImageDownloaderMergedTask *mergedTask = [strongSelf safelyGetMergedTask:URLIdentifier]; + if ([mergedTask.identifier isEqual:mergedTaskIdentifier]) { + mergedTask = [strongSelf safelyRemoveMergedTaskWithURLIdentifier:URLIdentifier]; + if (error) { + for (AFImageDownloaderResponseHandler *handler in mergedTask.responseHandlers) { + if (handler.failureBlock) { + dispatch_async(dispatch_get_main_queue(), ^{ + handler.failureBlock(request, (NSHTTPURLResponse *)response, error); + }); + } } - } - } else { - [strongSelf.imageCache addImage:responseObject forRequest:request withAdditionalIdentifier:nil]; - - for (AFImageDownloaderResponseHandler *handler in mergedTask.responseHandlers) { - if (handler.successBlock) { - dispatch_async(dispatch_get_main_queue(), ^{ - handler.successBlock(request, (NSHTTPURLResponse*)response, responseObject); - }); + } else { + if ([strongSelf.imageCache shouldCacheImage:responseObject forRequest:request withAdditionalIdentifier:nil]) { + [strongSelf.imageCache addImage:responseObject forRequest:request withAdditionalIdentifier:nil]; } - } + for (AFImageDownloaderResponseHandler *handler in mergedTask.responseHandlers) { + if (handler.successBlock) { + dispatch_async(dispatch_get_main_queue(), ^{ + handler.successBlock(request, (NSHTTPURLResponse *)response, responseObject); + }); + } + } + + } } [strongSelf safelyDecrementActiveTaskCount]; [strongSelf safelyStartNextTaskIfNecessary]; @@ -259,10 +294,11 @@ - (nullable AFImageDownloadReceipt *)downloadImageForURLRequest:(NSURLRequest *) success:success failure:failure]; AFImageDownloaderMergedTask *mergedTask = [[AFImageDownloaderMergedTask alloc] - initWithIdentifier:identifier + initWithURLIdentifier:URLIdentifier + identifier:mergedTaskIdentifier task:createdTask]; [mergedTask addResponseHandler:handler]; - self.mergedTasks[identifier] = mergedTask; + self.mergedTasks[URLIdentifier] = mergedTask; // 5) Either start the request or enqueue it depending on the current active request count if ([self isActiveRequestCountBelowMaximumLimit]) { @@ -282,8 +318,8 @@ - (nullable AFImageDownloadReceipt *)downloadImageForURLRequest:(NSURLRequest *) - (void)cancelTaskForImageDownloadReceipt:(AFImageDownloadReceipt *)imageDownloadReceipt { dispatch_sync(self.synchronizationQueue, ^{ - NSString *identifier = imageDownloadReceipt.task.originalRequest.URL.absoluteString; - AFImageDownloaderMergedTask *mergedTask = self.mergedTasks[identifier]; + NSString *URLIdentifier = imageDownloadReceipt.task.originalRequest.URL.absoluteString; + AFImageDownloaderMergedTask *mergedTask = self.mergedTasks[URLIdentifier]; NSUInteger index = [mergedTask.responseHandlers indexOfObjectPassingTest:^BOOL(AFImageDownloaderResponseHandler * _Nonnull handler, __unused NSUInteger idx, __unused BOOL * _Nonnull stop) { return handler.uuid == imageDownloadReceipt.receiptID; }]; @@ -301,22 +337,28 @@ - (void)cancelTaskForImageDownloadReceipt:(AFImageDownloadReceipt *)imageDownloa } } - if (mergedTask.responseHandlers.count == 0 && mergedTask.task.state == NSURLSessionTaskStateSuspended) { + if (mergedTask.responseHandlers.count == 0) { [mergedTask.task cancel]; + [self removeMergedTaskWithURLIdentifier:URLIdentifier]; } }); } -- (AFImageDownloaderMergedTask*)safelyRemoveMergedTaskWithIdentifier:(NSString *)identifier { +- (AFImageDownloaderMergedTask *)safelyRemoveMergedTaskWithURLIdentifier:(NSString *)URLIdentifier { __block AFImageDownloaderMergedTask *mergedTask = nil; dispatch_sync(self.synchronizationQueue, ^{ - mergedTask = self.mergedTasks[identifier]; - [self.mergedTasks removeObjectForKey:identifier]; - + mergedTask = [self removeMergedTaskWithURLIdentifier:URLIdentifier]; }); return mergedTask; } +//This method should only be called from safely within the synchronizationQueue +- (AFImageDownloaderMergedTask *)removeMergedTaskWithURLIdentifier:(NSString *)URLIdentifier { + AFImageDownloaderMergedTask *mergedTask = self.mergedTasks[URLIdentifier]; + [self.mergedTasks removeObjectForKey:URLIdentifier]; + return mergedTask; +} + - (void)safelyDecrementActiveTaskCount { dispatch_sync(self.synchronizationQueue, ^{ if (self.activeRequestCount > 0) { @@ -345,7 +387,7 @@ - (void)startMergedTask:(AFImageDownloaderMergedTask *)mergedTask { } - (void)enqueueMergedTask:(AFImageDownloaderMergedTask *)mergedTask { - switch (self.downloadPrioritizaton) { + switch (self.downloadPrioritization) { case AFImageDownloadPrioritizationFIFO: [self.queuedMergedTasks addObject:mergedTask]; break; @@ -366,6 +408,14 @@ - (BOOL)isActiveRequestCountBelowMaximumLimit { return self.activeRequestCount < self.maximumActiveDownloads; } +- (AFImageDownloaderMergedTask *)safelyGetMergedTask:(NSString *)URLIdentifier { + __block AFImageDownloaderMergedTask *mergedTask; + dispatch_sync(self.synchronizationQueue, ^(){ + mergedTask = self.mergedTasks[URLIdentifier]; + }); + return mergedTask; +} + @end #endif diff --git a/Pods/AFNetworking/UIKit+AFNetworking/AFNetworkActivityIndicatorManager.h b/Pods/AFNetworking/UIKit+AFNetworking/AFNetworkActivityIndicatorManager.h index a627a6d6..3bcf2895 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/AFNetworkActivityIndicatorManager.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/AFNetworkActivityIndicatorManager.h @@ -1,5 +1,5 @@ // AFNetworkActivityIndicatorManager.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/AFNetworking/UIKit+AFNetworking/AFNetworkActivityIndicatorManager.m b/Pods/AFNetworking/UIKit+AFNetworking/AFNetworkActivityIndicatorManager.m index 0615fa9f..8cb5677e 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/AFNetworkActivityIndicatorManager.m +++ b/Pods/AFNetworking/UIKit+AFNetworking/AFNetworkActivityIndicatorManager.m @@ -1,5 +1,5 @@ // AFNetworkActivityIndicatorManager.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -109,11 +109,9 @@ - (BOOL)isNetworkActivityOccurring { - (void)setNetworkActivityIndicatorVisible:(BOOL)networkActivityIndicatorVisible { if (_networkActivityIndicatorVisible != networkActivityIndicatorVisible) { - [self willChangeValueForKey:@"networkActivityIndicatorVisible"]; @synchronized(self) { - _networkActivityIndicatorVisible = networkActivityIndicatorVisible; + _networkActivityIndicatorVisible = networkActivityIndicatorVisible; } - [self didChangeValueForKey:@"networkActivityIndicatorVisible"]; if (self.networkActivityActionBlock) { self.networkActivityActionBlock(networkActivityIndicatorVisible); } else { @@ -122,38 +120,20 @@ - (void)setNetworkActivityIndicatorVisible:(BOOL)networkActivityIndicatorVisible } } -- (void)setActivityCount:(NSInteger)activityCount { - @synchronized(self) { - _activityCount = activityCount; - } - - dispatch_async(dispatch_get_main_queue(), ^{ - [self updateCurrentStateForNetworkActivityChange]; - }); -} - (void)incrementActivityCount { - [self willChangeValueForKey:@"activityCount"]; - @synchronized(self) { - _activityCount++; - } - [self didChangeValueForKey:@"activityCount"]; - + @synchronized(self) { + self.activityCount++; + } dispatch_async(dispatch_get_main_queue(), ^{ [self updateCurrentStateForNetworkActivityChange]; }); } - (void)decrementActivityCount { - [self willChangeValueForKey:@"activityCount"]; - @synchronized(self) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" - _activityCount = MAX(_activityCount - 1, 0); -#pragma clang diagnostic pop - } - [self didChangeValueForKey:@"activityCount"]; - + @synchronized(self) { + self.activityCount = MAX(_activityCount - 1, 0); + } dispatch_async(dispatch_get_main_queue(), ^{ [self updateCurrentStateForNetworkActivityChange]; }); @@ -175,7 +155,6 @@ - (void)networkRequestDidFinish:(NSNotification *)notification { - (void)setCurrentState:(AFNetworkActivityManagerState)currentState { @synchronized(self) { if (_currentState != currentState) { - [self willChangeValueForKey:@"currentState"]; _currentState = currentState; switch (currentState) { case AFNetworkActivityManagerStateNotActive: @@ -195,7 +174,6 @@ - (void)setCurrentState:(AFNetworkActivityManagerState)currentState { break; } } - [self didChangeValueForKey:@"currentState"]; } } diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.h b/Pods/AFNetworking/UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.h index b6ef044d..d424c9b8 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.h @@ -1,5 +1,5 @@ // UIActivityIndicatorView+AFNetworking.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.m b/Pods/AFNetworking/UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.m index fcf1c0c9..602a72d0 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.m +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.m @@ -1,5 +1,5 @@ // UIActivityIndicatorView+AFNetworking.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -71,16 +71,12 @@ - (void)setAnimatingWithStateOfTask:(NSURLSessionTask *)task { if (task) { if (task.state != NSURLSessionTaskStateCompleted) { - -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreceiver-is-weak" -#pragma clang diagnostic ignored "-Warc-repeated-use-of-weak" + UIActivityIndicatorView *activityIndicatorView = self.activityIndicatorView; if (task.state == NSURLSessionTaskStateRunning) { - [self.activityIndicatorView startAnimating]; + [activityIndicatorView startAnimating]; } else { - [self.activityIndicatorView stopAnimating]; + [activityIndicatorView stopAnimating]; } -#pragma clang diagnostic pop [notificationCenter addObserver:self selector:@selector(af_startAnimating) name:AFNetworkingTaskDidResumeNotification object:task]; [notificationCenter addObserver:self selector:@selector(af_stopAnimating) name:AFNetworkingTaskDidCompleteNotification object:task]; @@ -93,19 +89,13 @@ - (void)setAnimatingWithStateOfTask:(NSURLSessionTask *)task { - (void)af_startAnimating { dispatch_async(dispatch_get_main_queue(), ^{ -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreceiver-is-weak" [self.activityIndicatorView startAnimating]; -#pragma clang diagnostic pop }); } - (void)af_stopAnimating { dispatch_async(dispatch_get_main_queue(), ^{ -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreceiver-is-weak" [self.activityIndicatorView stopAnimating]; -#pragma clang diagnostic pop }); } diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIButton+AFNetworking.h b/Pods/AFNetworking/UIKit+AFNetworking/UIButton+AFNetworking.h index 98b911e1..d33e0d4a 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIButton+AFNetworking.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIButton+AFNetworking.h @@ -1,5 +1,5 @@ // UIButton+AFNetworking.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIButton+AFNetworking.m b/Pods/AFNetworking/UIKit+AFNetworking/UIButton+AFNetworking.m index ceb6ebc6..03aaf2a8 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIButton+AFNetworking.m +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIButton+AFNetworking.m @@ -1,5 +1,5 @@ // UIButton+AFNetworking.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -103,14 +103,11 @@ @implementation UIButton (AFNetworking) + (AFImageDownloader *)sharedImageDownloader { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" - return objc_getAssociatedObject(self, @selector(sharedImageDownloader)) ?: [AFImageDownloader defaultInstance]; -#pragma clang diagnostic pop + return objc_getAssociatedObject([UIButton class], @selector(sharedImageDownloader)) ?: [AFImageDownloader defaultInstance]; } + (void)setSharedImageDownloader:(AFImageDownloader *)imageDownloader { - objc_setAssociatedObject(self, @selector(sharedImageDownloader), imageDownloader, OBJC_ASSOCIATION_RETAIN_NONATOMIC); + objc_setAssociatedObject([UIButton class], @selector(sharedImageDownloader), imageDownloader, OBJC_ASSOCIATION_RETAIN_NONATOMIC); } #pragma mark - @@ -171,7 +168,7 @@ - (void)setImageForState:(UIControlState)state if ([[strongSelf af_imageDownloadReceiptForState:state].receiptID isEqual:downloadID]) { if (success) { success(request, response, responseObject); - } else if(responseObject) { + } else if (responseObject) { [strongSelf setImage:responseObject forState:state]; } [strongSelf af_setImageDownloadReceipt:nil forState:state]; @@ -220,7 +217,7 @@ - (void)setBackgroundImageForState:(UIControlState)state return; } - [self cancelImageDownloadTaskForState:state]; + [self cancelBackgroundImageDownloadTaskForState:state]; AFImageDownloader *downloader = [[self class] sharedImageDownloader]; id imageCache = downloader.imageCache; @@ -250,10 +247,10 @@ - (void)setBackgroundImageForState:(UIControlState)state if ([[strongSelf af_backgroundImageDownloadReceiptForState:state].receiptID isEqual:downloadID]) { if (success) { success(request, response, responseObject); - } else if(responseObject) { + } else if (responseObject) { [strongSelf setBackgroundImage:responseObject forState:state]; } - [strongSelf af_setImageDownloadReceipt:nil forState:state]; + [strongSelf af_setBackgroundImageDownloadReceipt:nil forState:state]; } } diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIImageView+AFNetworking.h b/Pods/AFNetworking/UIKit+AFNetworking/UIImageView+AFNetworking.h index ce9ae2e6..8929252e 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIImageView+AFNetworking.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIImageView+AFNetworking.h @@ -1,5 +1,5 @@ // UIImageView+AFNetworking.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIImageView+AFNetworking.m b/Pods/AFNetworking/UIKit+AFNetworking/UIImageView+AFNetworking.m index a97d5cc4..8ae49509 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIImageView+AFNetworking.m +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIImageView+AFNetworking.m @@ -1,5 +1,5 @@ // UIImageView+AFNetworking.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -48,15 +48,11 @@ - (void)af_setActiveImageDownloadReceipt:(AFImageDownloadReceipt *)imageDownload @implementation UIImageView (AFNetworking) + (AFImageDownloader *)sharedImageDownloader { - -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" - return objc_getAssociatedObject(self, @selector(sharedImageDownloader)) ?: [AFImageDownloader defaultInstance]; -#pragma clang diagnostic pop + return objc_getAssociatedObject([UIImageView class], @selector(sharedImageDownloader)) ?: [AFImageDownloader defaultInstance]; } + (void)setSharedImageDownloader:(AFImageDownloader *)imageDownloader { - objc_setAssociatedObject(self, @selector(sharedImageDownloader), imageDownloader, OBJC_ASSOCIATION_RETAIN_NONATOMIC); + objc_setAssociatedObject([UIImageView class], @selector(sharedImageDownloader), imageDownloader, OBJC_ASSOCIATION_RETAIN_NONATOMIC); } #pragma mark - @@ -79,17 +75,19 @@ - (void)setImageWithURLRequest:(NSURLRequest *)urlRequest success:(void (^)(NSURLRequest *request, NSHTTPURLResponse * _Nullable response, UIImage *image))success failure:(void (^)(NSURLRequest *request, NSHTTPURLResponse * _Nullable response, NSError *error))failure { - if ([urlRequest URL] == nil) { - [self cancelImageDownloadTask]; self.image = placeholderImage; + if (failure) { + NSError *error = [NSError errorWithDomain:NSURLErrorDomain code:NSURLErrorBadURL userInfo:nil]; + failure(urlRequest, nil, error); + } return; } - - if ([self isActiveTaskURLEqualToURLRequest:urlRequest]){ + + if ([self isActiveTaskURLEqualToURLRequest:urlRequest]) { return; } - + [self cancelImageDownloadTask]; AFImageDownloader *downloader = [[self class] sharedImageDownloader]; @@ -120,7 +118,7 @@ - (void)setImageWithURLRequest:(NSURLRequest *)urlRequest if ([strongSelf.af_activeImageDownloadReceipt.receiptID isEqual:downloadID]) { if (success) { success(request, response, responseObject); - } else if(responseObject) { + } else if (responseObject) { strongSelf.image = responseObject; } [strongSelf clearActiveDownloadInformation]; diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIKit+AFNetworking.h b/Pods/AFNetworking/UIKit+AFNetworking/UIKit+AFNetworking.h index b36ee0c5..aa9c0b02 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIKit+AFNetworking.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIKit+AFNetworking.h @@ -1,6 +1,6 @@ // UIKit+AFNetworking.h // -// Copyright (c) 2013 AFNetworking (http://afnetworking.com/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -20,23 +20,24 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. -#if TARGET_OS_IOS || TARGET_OS_TV -#import +#import #ifndef _UIKIT_AFNETWORKING_ #define _UIKIT_AFNETWORKING_ -#if TARGET_OS_IOS +#if TARGET_OS_IOS || TARGET_OS_TV #import "AFAutoPurgingImageCache.h" #import "AFImageDownloader.h" - #import "AFNetworkActivityIndicatorManager.h" - #import "UIRefreshControl+AFNetworking.h" - #import "UIWebView+AFNetworking.h" -#endif - #import "UIActivityIndicatorView+AFNetworking.h" #import "UIButton+AFNetworking.h" #import "UIImageView+AFNetworking.h" #import "UIProgressView+AFNetworking.h" -#endif /* _UIKIT_AFNETWORKING_ */ #endif + +#if TARGET_OS_IOS + #import "AFNetworkActivityIndicatorManager.h" + #import "UIRefreshControl+AFNetworking.h" + #import "WKWebView+AFNetworking.h" +#endif + +#endif /* _UIKIT_AFNETWORKING_ */ diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIProgressView+AFNetworking.h b/Pods/AFNetworking/UIKit+AFNetworking/UIProgressView+AFNetworking.h index a0c463b5..8ea0a731 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIProgressView+AFNetworking.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIProgressView+AFNetworking.h @@ -1,5 +1,5 @@ // UIProgressView+AFNetworking.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIProgressView+AFNetworking.m b/Pods/AFNetworking/UIKit+AFNetworking/UIProgressView+AFNetworking.m index 6680bacc..2ae753ec 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIProgressView+AFNetworking.m +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIProgressView+AFNetworking.m @@ -1,5 +1,5 @@ // UIProgressView+AFNetworking.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -55,6 +55,10 @@ - (void)af_setDownloadProgressAnimated:(BOOL)animated { - (void)setProgressWithUploadProgressOfTask:(NSURLSessionUploadTask *)task animated:(BOOL)animated { + if (task.state == NSURLSessionTaskStateCompleted) { + return; + } + [task addObserver:self forKeyPath:@"state" options:(NSKeyValueObservingOptions)0 context:AFTaskCountOfBytesSentContext]; [task addObserver:self forKeyPath:@"countOfBytesSent" options:(NSKeyValueObservingOptions)0 context:AFTaskCountOfBytesSentContext]; @@ -64,6 +68,10 @@ - (void)setProgressWithUploadProgressOfTask:(NSURLSessionUploadTask *)task - (void)setProgressWithDownloadProgressOfTask:(NSURLSessionDownloadTask *)task animated:(BOOL)animated { + if (task.state == NSURLSessionTaskStateCompleted) { + return; + } + [task addObserver:self forKeyPath:@"state" options:(NSKeyValueObservingOptions)0 context:AFTaskCountOfBytesReceivedContext]; [task addObserver:self forKeyPath:@"countOfBytesReceived" options:(NSKeyValueObservingOptions)0 context:AFTaskCountOfBytesReceivedContext]; diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIRefreshControl+AFNetworking.h b/Pods/AFNetworking/UIKit+AFNetworking/UIRefreshControl+AFNetworking.h index f6930a98..215eafcf 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIRefreshControl+AFNetworking.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIRefreshControl+AFNetworking.h @@ -1,6 +1,6 @@ // UIRefreshControl+AFNetworking.m // -// Copyright (c) 2014 AFNetworking (http://afnetworking.com) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIRefreshControl+AFNetworking.m b/Pods/AFNetworking/UIKit+AFNetworking/UIRefreshControl+AFNetworking.m index ddc033b9..cd46916a 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIRefreshControl+AFNetworking.m +++ b/Pods/AFNetworking/UIKit+AFNetworking/UIRefreshControl+AFNetworking.m @@ -1,6 +1,6 @@ // UIRefreshControl+AFNetworking.m // -// Copyright (c) 2014 AFNetworking (http://afnetworking.com) +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -71,19 +71,16 @@ - (void)setRefreshingWithStateOfTask:(NSURLSessionTask *)task { [notificationCenter removeObserver:self name:AFNetworkingTaskDidCompleteNotification object:nil]; if (task) { -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreceiver-is-weak" -#pragma clang diagnostic ignored "-Warc-repeated-use-of-weak" + UIRefreshControl *refreshControl = self.refreshControl; if (task.state == NSURLSessionTaskStateRunning) { - [self.refreshControl beginRefreshing]; + [refreshControl beginRefreshing]; [notificationCenter addObserver:self selector:@selector(af_beginRefreshing) name:AFNetworkingTaskDidResumeNotification object:task]; [notificationCenter addObserver:self selector:@selector(af_endRefreshing) name:AFNetworkingTaskDidCompleteNotification object:task]; [notificationCenter addObserver:self selector:@selector(af_endRefreshing) name:AFNetworkingTaskDidSuspendNotification object:task]; } else { - [self.refreshControl endRefreshing]; + [refreshControl endRefreshing]; } -#pragma clang diagnostic pop } } @@ -91,19 +88,13 @@ - (void)setRefreshingWithStateOfTask:(NSURLSessionTask *)task { - (void)af_beginRefreshing { dispatch_async(dispatch_get_main_queue(), ^{ -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreceiver-is-weak" [self.refreshControl beginRefreshing]; -#pragma clang diagnostic pop }); } - (void)af_endRefreshing { dispatch_async(dispatch_get_main_queue(), ^{ -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wreceiver-is-weak" [self.refreshControl endRefreshing]; -#pragma clang diagnostic pop }); } diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIWebView+AFNetworking.h b/Pods/AFNetworking/UIKit+AFNetworking/WKWebView+AFNetworking.h similarity index 81% rename from Pods/AFNetworking/UIKit+AFNetworking/UIWebView+AFNetworking.h rename to Pods/AFNetworking/UIKit+AFNetworking/WKWebView+AFNetworking.h index 777dce2a..680fedff 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIWebView+AFNetworking.h +++ b/Pods/AFNetworking/UIKit+AFNetworking/WKWebView+AFNetworking.h @@ -1,5 +1,5 @@ -// UIWebView+AFNetworking.h -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// WkWebView+AFNetworking.h +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -26,47 +26,47 @@ #if TARGET_OS_IOS #import +#import NS_ASSUME_NONNULL_BEGIN @class AFHTTPSessionManager; -/** - This category adds methods to the UIKit framework's `UIWebView` class. The methods in this category provide increased control over the request cycle, including progress monitoring and success / failure handling. - - @discussion When using these category methods, make sure to assign `delegate` for the web view, which implements `–webView:shouldStartLoadWithRequest:navigationType:` appropriately. This allows for tapped links to be loaded through AFNetworking, and can ensure that `canGoBack` & `canGoForward` update their values correctly. - */ -@interface UIWebView (AFNetworking) +@interface WKWebView (AFNetworking) /** - The session manager used to download all requests. + The session manager used to download all request */ @property (nonatomic, strong) AFHTTPSessionManager *sessionManager; /** Asynchronously loads the specified request. - + @param request A URL request identifying the location of the content to load. This must not be `nil`. + @param navigation The WKNavigation object that containts information for tracking the loading progress of a webpage. This must not be `nil`. @param progress A progress object monitoring the current download progress. @param success A block object to be executed when the request finishes loading successfully. This block returns the HTML string to be loaded by the web view, and takes two arguments: the response, and the response string. @param failure A block object to be executed when the data task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a single argument: the error that occurred. */ - (void)loadRequest:(NSURLRequest *)request + navigation:(WKNavigation * _Nonnull)navigation progress:(NSProgress * _Nullable __autoreleasing * _Nullable)progress success:(nullable NSString * (^)(NSHTTPURLResponse *response, NSString *HTML))success failure:(nullable void (^)(NSError *error))failure; /** Asynchronously loads the data associated with a particular request with a specified MIME type and text encoding. - + @param request A URL request identifying the location of the content to load. This must not be `nil`. + @param navigation The WKNavigation object that containts information for tracking the loading progress of a webpage. This must not be `nil`. @param MIMEType The MIME type of the content. Defaults to the content type of the response if not specified. @param textEncodingName The IANA encoding name, as in `utf-8` or `utf-16`. Defaults to the response text encoding if not specified. -@param progress A progress object monitoring the current download progress. + @param progress A progress object monitoring the current download progress. @param success A block object to be executed when the request finishes loading successfully. This block returns the data to be loaded by the web view and takes two arguments: the response, and the downloaded data. @param failure A block object to be executed when the data task finishes unsuccessfully, or that finishes successfully, but encountered an error while parsing the response data. This block has no return value and takes a single argument: the error that occurred. */ - (void)loadRequest:(NSURLRequest *)request + navigation:(WKNavigation * _Nonnull)navigation MIMEType:(nullable NSString *)MIMEType textEncodingName:(nullable NSString *)textEncodingName progress:(NSProgress * _Nullable __autoreleasing * _Nullable)progress diff --git a/Pods/AFNetworking/UIKit+AFNetworking/UIWebView+AFNetworking.m b/Pods/AFNetworking/UIKit+AFNetworking/WKWebView+AFNetworking.m similarity index 65% rename from Pods/AFNetworking/UIKit+AFNetworking/UIWebView+AFNetworking.m rename to Pods/AFNetworking/UIKit+AFNetworking/WKWebView+AFNetworking.m index ac089da1..6eca3c3a 100644 --- a/Pods/AFNetworking/UIKit+AFNetworking/UIWebView+AFNetworking.m +++ b/Pods/AFNetworking/UIKit+AFNetworking/WKWebView+AFNetworking.m @@ -1,5 +1,5 @@ -// UIWebView+AFNetworking.m -// Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +// WkWebView+AFNetworking.m +// Copyright (c) 2011–2016 Alamofire Software Foundation ( http://alamofire.org/ ) // // Permission is hereby granted, free of charge, to any person obtaining a copy // of this software and associated documentation files (the "Software"), to deal @@ -19,7 +19,7 @@ // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN // THE SOFTWARE. -#import "UIWebView+AFNetworking.h" +#import "WKWebView+AFNetworking.h" #import @@ -29,11 +29,11 @@ #import "AFURLResponseSerialization.h" #import "AFURLRequestSerialization.h" -@interface UIWebView (_AFNetworking) +@interface WKWebView (_AFNetworking) @property (readwrite, nonatomic, strong, setter = af_setURLSessionTask:) NSURLSessionDataTask *af_URLSessionTask; @end -@implementation UIWebView (_AFNetworking) +@implementation WKWebView (_AFNetworking) - (NSURLSessionDataTask *)af_URLSessionTask { return (NSURLSessionDataTask *)objc_getAssociatedObject(self, @selector(af_URLSessionTask)); @@ -47,9 +47,9 @@ - (void)af_setURLSessionTask:(NSURLSessionDataTask *)af_URLSessionTask { #pragma mark - -@implementation UIWebView (AFNetworking) +@implementation WKWebView (AFNetworking) -- (AFHTTPSessionManager *)sessionManager { +- (AFHTTPSessionManager *)sessionManager { static AFHTTPSessionManager *_af_defaultHTTPSessionManager = nil; static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ @@ -57,11 +57,8 @@ - (AFHTTPSessionManager *)sessionManager { _af_defaultHTTPSessionManager.requestSerializer = [AFHTTPRequestSerializer serializer]; _af_defaultHTTPSessionManager.responseSerializer = [AFHTTPResponseSerializer serializer]; }); - -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" + return objc_getAssociatedObject(self, @selector(sessionManager)) ?: _af_defaultHTTPSessionManager; -#pragma clang diagnostic pop } - (void)setSessionManager:(AFHTTPSessionManager *)sessionManager { @@ -74,11 +71,8 @@ - (void)setSessionManager:(AFHTTPSessionManager *)sessionManager { dispatch_once(&onceToken, ^{ _af_defaultResponseSerializer = [AFHTTPResponseSerializer serializer]; }); - -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Wgnu" + return objc_getAssociatedObject(self, @selector(responseSerializer)) ?: _af_defaultResponseSerializer; -#pragma clang diagnostic pop } - (void)setResponseSerializer:(AFHTTPResponseSerializer *)responseSerializer { @@ -88,11 +82,11 @@ - (void)setResponseSerializer:(AFHTTPResponseSerializer 3.0) + - AFNetworking (~> 4.0) SPEC REPOS: - https://github.com/cocoapods/specs.git: + https://github.com/cocoapods/Specs.git: - AFNetworking SPEC CHECKSUMS: - AFNetworking: a0075feb321559dc78d9d85b55d11caa19eabb93 + AFNetworking: 7864c38297c79aaca1500c33288e429c3451fdce -PODFILE CHECKSUM: 8d0eff399cf1d98e2ff7220113aed7a0d13ff37d +PODFILE CHECKSUM: 0d344df7f3ab5977942e66fc9ddb7085576dd565 -COCOAPODS: 1.6.0.beta.2 +COCOAPODS: 1.10.1 diff --git a/Pods/Pods.xcodeproj/project.pbxproj b/Pods/Pods.xcodeproj/project.pbxproj index d8e997e8..b7e52b7d 100644 --- a/Pods/Pods.xcodeproj/project.pbxproj +++ b/Pods/Pods.xcodeproj/project.pbxproj @@ -7,242 +7,246 @@ objects = { /* Begin PBXBuildFile section */ - 03826B8703E219C11E4C2DAB9A634325 /* UIImage+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 7118A16B4CE6C2F5425CDEEE77040A9A /* UIImage+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 0A5C58997AAC65BF6B09039F0DF6F9FC /* UIWebView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = D7E209D170F390B80C67336D1D58526E /* UIWebView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 0A90CEAFD09D78174FC763C95E302179 /* AFURLRequestSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 82DF63A147D90320B4812AFB422015AA /* AFURLRequestSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 1097BF248FADB4F17D799B52916E6FDB /* AFURLRequestSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = A3B7FFADD03754D2228E8993F0F0CF2A /* AFURLRequestSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 116B684420898BB169C74737B17C20A2 /* UIWebView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = D7E209D170F390B80C67336D1D58526E /* UIWebView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 141CEED22EC7683E8EBCA3FA9A98427A /* UIRefreshControl+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D3DAE5E44B0768704E76DA7829CEA05 /* UIRefreshControl+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 1B310C2202C5838DE17FD736B4C99FF1 /* UIRefreshControl+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 3D3DAE5E44B0768704E76DA7829CEA05 /* UIRefreshControl+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 23DC83D398DC88B656CB82A621197CD4 /* UIProgressView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 067E6D26AAF8113D673714F5797BE715 /* UIProgressView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 2566BAE1CFDA5654F2FDA6BDFF2D80DB /* AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = A39FEEABC1551F49F0B0FE21D2AD9D6C /* AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 2F86B19B954FC0CBA21DB7BB3075B977 /* AFNetworking-c94d3492-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 284C26DCEC89225FE257E8AF6557BAED /* AFNetworking-c94d3492-dummy.m */; }; - 31E0BFAE0DE4C1C58E9EFD93DC054597 /* AFURLSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = AB97A15AA490770939273DBC0069730A /* AFURLSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 32A0D7DB742D61FEF014C54D48960857 /* AFImageDownloader.m in Sources */ = {isa = PBXBuildFile; fileRef = D1ACB67B32DAEB8AD59AA058818CBD97 /* AFImageDownloader.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 32EC063C076486D1E539337E3590A00D /* AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = A39FEEABC1551F49F0B0FE21D2AD9D6C /* AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 32F75AFB06C5BB3D64C7E504D5DABC07 /* AFNetworkReachabilityManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AC90BD8F86F957D3DC47D89B2BB040B /* AFNetworkReachabilityManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 36994F1813AD8E417C23A6544D30A357 /* UIImageView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 067029DEE90E57DFFB5748B732462B45 /* UIImageView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 384FC592DDCAAB5C04CB8A1B3FE2D22E /* UIKit+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = D8FA05DE98BEC9B0C224676B3C39B74A /* UIKit+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 3961DC887BC7E7D2862D38BE20072553 /* AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = A39FEEABC1551F49F0B0FE21D2AD9D6C /* AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 3BF6D0D7ABF591F0C2A3D0ED8255FA15 /* AFURLResponseSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = C0B108B686488E21A171DAA4D18AD881 /* AFURLResponseSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 419794E37141ECCF8D65524851BBF4B0 /* AFURLResponseSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = C0B108B686488E21A171DAA4D18AD881 /* AFURLResponseSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 4221D8805C6A539DB6910646BEED3695 /* AFURLRequestSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 82DF63A147D90320B4812AFB422015AA /* AFURLRequestSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 44194FA22CBDE3FB910E7B67D70E2000 /* AFAutoPurgingImageCache.h in Headers */ = {isa = PBXBuildFile; fileRef = CF9CF6605A13B92B6E686264E06C3CF6 /* AFAutoPurgingImageCache.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 45DAC3ED54E9D38488DA4B62162F98AF /* AFImageDownloader.m in Sources */ = {isa = PBXBuildFile; fileRef = D1ACB67B32DAEB8AD59AA058818CBD97 /* AFImageDownloader.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 49ECB3B7AB3028A11367187119BC8BB7 /* AFNetworkActivityIndicatorManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 523760D236AEACFBD199B6042A6D92D4 /* AFNetworkActivityIndicatorManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 4FD29B68A3B5F7B8FF60AA198DD25790 /* AFNetworking-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 84C2852D436E477D989044D9F70FD4CF /* AFNetworking-iOS-dummy.m */; }; - 507F784759A259B26712FA7588DAB168 /* UIButton+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = F2BCCE7C59CC730D5599FD2277D210CE /* UIButton+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 522E8E8D06D2046D0CD0DB65C09DDD26 /* UIImageView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 067029DEE90E57DFFB5748B732462B45 /* UIImageView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 5420902A4AB0BD57FF81A99B147C7C99 /* AFSecurityPolicy.h in Headers */ = {isa = PBXBuildFile; fileRef = A4EA2BE1C35EB50F0B89D8423EB6F7B7 /* AFSecurityPolicy.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 55026A7B694A5F2FA53A2A75C97DF673 /* AFURLResponseSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = F3EC32E0205FA2F4314674D854DCC8B6 /* AFURLResponseSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 55663564E902A5510FC3881DA1FBF67E /* AFURLRequestSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 82DF63A147D90320B4812AFB422015AA /* AFURLRequestSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 557288FE943D212DA96D05AA9D9BBBC1 /* UIWebView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 82F53B7CEF2CEEC442FCE43999EC54ED /* UIWebView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 56D369D51173A5314079D3D8C9EE569B /* AFNetworkReachabilityManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AC90BD8F86F957D3DC47D89B2BB040B /* AFNetworkReachabilityManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 5B9099D9A7BB21987AA44C6F88422575 /* UIButton+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AA57189482E366F3DDEB76A906DAC8B /* UIButton+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 5CEC3FD0B4DBBA6995C6477672C096FB /* UIProgressView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = B9DEFEF6F25E74F9117C91B173D22A96 /* UIProgressView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 5FC64ACBF1ED123C69507A9176E0F134 /* AFURLSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = AB97A15AA490770939273DBC0069730A /* AFURLSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 5FDCA4EEF5F7E9DEC06741EDC7C91923 /* AFNetworkReachabilityManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 8CC1FF5E4D9879068E2CA6DD5C9FDAD1 /* AFNetworkReachabilityManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 61443F016D0C1732F73913538E4E7908 /* AFSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0339F512FBBF8E15BCFDFAC7119ACD /* AFSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 643C4AB032AB560491B42F8FB0297EC4 /* AFNetworkReachabilityManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 8CC1FF5E4D9879068E2CA6DD5C9FDAD1 /* AFNetworkReachabilityManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 6A4F2D9505BF8DF249C7AFB1D479944F /* UIActivityIndicatorView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = EDCEAD97A5F72670715036A6AB785B92 /* UIActivityIndicatorView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 6C54A1A08A4CCCD443E90EB8D3DF768C /* AFNetworking-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = ED29F21403BDB1E5DD379E272051A69E /* AFNetworking-tvOS-dummy.m */; }; - 73AB5781DC7940FB178273DEFBCB0033 /* AFURLResponseSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = F3EC32E0205FA2F4314674D854DCC8B6 /* AFURLResponseSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 7B84F986E685989A630FA5280DD03C70 /* UIWebView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 82F53B7CEF2CEEC442FCE43999EC54ED /* UIWebView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 7E22C3FBCD4BC396FF1C43FBF301C6D8 /* AFNetworkActivityIndicatorManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 8E520EE78F252B3D97595A45BD13A540 /* AFNetworkActivityIndicatorManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 7F514C121F982BAC1BDA0F422BC5B971 /* UIButton+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = F2BCCE7C59CC730D5599FD2277D210CE /* UIButton+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 8AE476DAE4A8371DB6457ED40A842DFA /* AFImageDownloader.h in Headers */ = {isa = PBXBuildFile; fileRef = 490EC63B38541DE3F08700C6B42BA8A1 /* AFImageDownloader.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 8B0682AA90BB73680ED459DE5D093CF6 /* AFURLRequestSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = A3B7FFADD03754D2228E8993F0F0CF2A /* AFURLRequestSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 8C176A815B409BC36CE64A5807FA1075 /* AFHTTPSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B7251B546B1E78F8558F39EABEA675B7 /* AFHTTPSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 907268E34649AB2AAB074BCA44C8000F /* AFAutoPurgingImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = A25308E5B3B2A8F72FAA398BA1C009A6 /* AFAutoPurgingImageCache.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 9208B4637E11A54EB5544487CA571CB3 /* UIActivityIndicatorView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = EDCEAD97A5F72670715036A6AB785B92 /* UIActivityIndicatorView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 9344A6A89825F6253753BD008FF0548A /* AFImageDownloader.h in Headers */ = {isa = PBXBuildFile; fileRef = 490EC63B38541DE3F08700C6B42BA8A1 /* AFImageDownloader.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 946EFF93146FA52AFD42520697349936 /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2802EA0AF2A76C463F3C503A0FE4B8A1 /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m */; }; - 9591A2AD0135BE09CA49199BE0DF89A3 /* AFHTTPSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B7251B546B1E78F8558F39EABEA675B7 /* AFHTTPSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - 97926D543BBAAFE8E14CC544E31F4BD0 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7CB1CB5970F98C80FF4808D6C6E1BF57 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m */; }; - 979BD766D2CB1552B4C87C5D24C5E483 /* AFURLRequestSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = A3B7FFADD03754D2228E8993F0F0CF2A /* AFURLRequestSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; - 9CE73AE2C7D0BB9764D2BC98B5B405F0 /* UIImageView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 7691028C093F81E5766AD53ED2F6E0B8 /* UIImageView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - A05A453F76B4CB397C463F65ADC5A597 /* UIProgressView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = B9DEFEF6F25E74F9117C91B173D22A96 /* UIProgressView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - A5BC0E662634EB2667EBB67F9AA855F7 /* AFHTTPSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B7251B546B1E78F8558F39EABEA675B7 /* AFHTTPSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - A91CA6F5355347DFCEA29231DED2D805 /* AFSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0339F512FBBF8E15BCFDFAC7119ACD /* AFSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - AFBE38BD371CDEC001DDD749A136F5E9 /* AFHTTPSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D2CA139ADDD2E9918936FDF6B7650C6 /* AFHTTPSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - B1D14C1DBFF8048DFA8593DB11FCFF44 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DFA732EC710C331C88DDC0E923D582A5 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m */; }; - B382A7EE4B5A34A04BF7EF1E77096F46 /* AFHTTPSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D2CA139ADDD2E9918936FDF6B7650C6 /* AFHTTPSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - C3DEC73556C1E9825D3EEEC4EF3222D0 /* AFSecurityPolicy.h in Headers */ = {isa = PBXBuildFile; fileRef = A4EA2BE1C35EB50F0B89D8423EB6F7B7 /* AFSecurityPolicy.h */; settings = {ATTRIBUTES = (Project, ); }; }; - C95B654D0777E3F59E627DB8154FBF64 /* AFNetworkActivityIndicatorManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 523760D236AEACFBD199B6042A6D92D4 /* AFNetworkActivityIndicatorManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - CA05A3A9B350442758AA8113DC21C005 /* AFURLSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 4622E5A19C9D5A8DDBED0433C745C5C9 /* AFURLSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - D2291731C1F2969AC93B01DD98613A66 /* AFNetworkReachabilityManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 5AC90BD8F86F957D3DC47D89B2BB040B /* AFNetworkReachabilityManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - D61AF81D29FD5A1B3D1BAE2AC75D880C /* AFURLSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = AB97A15AA490770939273DBC0069730A /* AFURLSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - D7C129AE47D408B85B5AC1AFEEB29A9A /* UIRefreshControl+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 0121AF19B4DEE0ED795452A716E6D45F /* UIRefreshControl+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - D8ACF9ED0002D52D205E1119E7DBD5D9 /* UIProgressView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 067E6D26AAF8113D673714F5797BE715 /* UIProgressView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - D9425DE952F0E042DA9C10785C6A9B7C /* UIActivityIndicatorView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 419A7B2C9EBA571FBEBE2914F2246A01 /* UIActivityIndicatorView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - DB57CCE4CF63C252CE14C817DE15AACD /* AFNetworkActivityIndicatorManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 8E520EE78F252B3D97595A45BD13A540 /* AFNetworkActivityIndicatorManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - DBED2A43013D393E98DB8B2A97045DC4 /* AFURLResponseSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = F3EC32E0205FA2F4314674D854DCC8B6 /* AFURLResponseSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; - DC1BD3654EAAD82B3E9F44B808026E81 /* UIImage+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 7118A16B4CE6C2F5425CDEEE77040A9A /* UIImage+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - E0E06D042DA0183FA128B3698E5E006F /* UIButton+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 5AA57189482E366F3DDEB76A906DAC8B /* UIButton+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - E24C16DF4A790AA901FC78D88AD356FC /* AFSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8F0339F512FBBF8E15BCFDFAC7119ACD /* AFSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - E3771BDC96E71EC693D8E0077F1D91AC /* AFURLResponseSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = C0B108B686488E21A171DAA4D18AD881 /* AFURLResponseSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - E6AB215237138C2A62B8D6DEA6524BBF /* UIKit+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = D8FA05DE98BEC9B0C224676B3C39B74A /* UIKit+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - E918FB9D9BEEF76125067E8CC98D963D /* UIActivityIndicatorView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 419A7B2C9EBA571FBEBE2914F2246A01 /* UIActivityIndicatorView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - EAABE565D6D62D27D232B94F4F86CF2F /* AFAutoPurgingImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = A25308E5B3B2A8F72FAA398BA1C009A6 /* AFAutoPurgingImageCache.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - EADE64D3244517944416C363DA822B18 /* AFURLSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 4622E5A19C9D5A8DDBED0433C745C5C9 /* AFURLSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - EB6CED28E29434212736C804F1F63677 /* AFHTTPSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 1D2CA139ADDD2E9918936FDF6B7650C6 /* AFHTTPSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - EBA21C2504105E270C349BAF94C81CF6 /* UIImageView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 7691028C093F81E5766AD53ED2F6E0B8 /* UIImageView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - F1EB67B1A9C1A9458E65D2BBA3CF356E /* AFNetworkReachabilityManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 8CC1FF5E4D9879068E2CA6DD5C9FDAD1 /* AFNetworkReachabilityManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; - F850FC543153A64DFE92955ECDB4F337 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B13F476E703C08E81870243C9FFE7752 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m */; }; - FC53F62EFC6A879D99DE2F22CE3388CD /* UIRefreshControl+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 0121AF19B4DEE0ED795452A716E6D45F /* UIRefreshControl+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; - FDB93829F88A10DD4F52FA5D174DD216 /* AFAutoPurgingImageCache.h in Headers */ = {isa = PBXBuildFile; fileRef = CF9CF6605A13B92B6E686264E06C3CF6 /* AFAutoPurgingImageCache.h */; settings = {ATTRIBUTES = (Project, ); }; }; - FEC5848363B04369FA95F167C751C820 /* AFURLSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 4622E5A19C9D5A8DDBED0433C745C5C9 /* AFURLSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; - FFB6618C19D61DBE626F365FD27153E9 /* AFSecurityPolicy.h in Headers */ = {isa = PBXBuildFile; fileRef = A4EA2BE1C35EB50F0B89D8423EB6F7B7 /* AFSecurityPolicy.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 016F4D46CEE85431C795F70EF7820334 /* AFURLRequestSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = AB5935B63E6BC04EBDB2488B75ED9B66 /* AFURLRequestSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 01E5D57BF87BE181EEA39DAA5155FF18 /* AFHTTPSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B5272C8AAB9087D9182279EA9B89398E /* AFHTTPSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0752B5A5EEBAB3C59D85352A97540C86 /* AFHTTPSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B5272C8AAB9087D9182279EA9B89398E /* AFHTTPSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 08FDBAD9E6DB1A8B6F5AC75E5BE984F7 /* AFNetworkActivityIndicatorManager.h in Headers */ = {isa = PBXBuildFile; fileRef = A348B42049E227F96C3F232D3C2B976D /* AFNetworkActivityIndicatorManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 09678E9E21AEFA91262B5062DFB05E1D /* AFNetworking-iOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 53ACAFE96B29B5D97D62E73B6C2DB73C /* AFNetworking-iOS-dummy.m */; }; + 0AB356C315056E0A261AFA0CE83855AA /* AFNetworkActivityIndicatorManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 23D1BEF5C3C34B8168135C9B3BD49DEE /* AFNetworkActivityIndicatorManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 0B236E7CD846E4DE6847DD10C27AA11C /* AFURLRequestSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = C98349A3949D96E28B704577C3FBD93D /* AFURLRequestSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 0F0193CF702B890AE2BC6AF8DB727BD7 /* AFNetworkActivityIndicatorManager.h in Headers */ = {isa = PBXBuildFile; fileRef = A348B42049E227F96C3F232D3C2B976D /* AFNetworkActivityIndicatorManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 14E5180DDFD5CDE1E8A6CFC6CFA06705 /* AFSecurityPolicy.h in Headers */ = {isa = PBXBuildFile; fileRef = 4AE59FB0F479D67CC9DB1FA33A13FEB0 /* AFSecurityPolicy.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 189EF09A1D56DF812404E252759570C5 /* AFURLRequestSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = AB5935B63E6BC04EBDB2488B75ED9B66 /* AFURLRequestSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 2197779B70AE5A6A5FF51F60A82249B2 /* UIImageView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = A30EB9730E5ADCF34AD2FE27A7A4BDF9 /* UIImageView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 22B68378EB280677C4F9170B68595482 /* AFImageDownloader.h in Headers */ = {isa = PBXBuildFile; fileRef = EFC81F7AAE5D74995DEF8DB5B42ED1F7 /* AFImageDownloader.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 22F04EBD632AE3C024526A67D4BBBFA8 /* UIRefreshControl+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F64A7FB4F12171BD021EA126B8C02A2 /* UIRefreshControl+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 310790DB888F028D18C8AC6CB2E634DF /* AFNetworkReachabilityManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 327ADD0333649802839E2A2C000ED53E /* AFNetworkReachabilityManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 31EAF2792C36DA212D4A8421BC71CA8D /* UIButton+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = BBE6A9BD4C8D02893C2A69A0C486248B /* UIButton+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 35785A1163D8D6359F1AC9B125B98A5B /* AFNetworkReachabilityManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 2CCD01B8926DD3CC2BC1C5E3801E89C1 /* AFNetworkReachabilityManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 361364EA6A17375DE09B30E1EB7E15A6 /* AFImageDownloader.m in Sources */ = {isa = PBXBuildFile; fileRef = ADFFBE2A9A866EEE72C875B5FDDBC239 /* AFImageDownloader.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3784CEAA87C0A28517369424F670C5C9 /* AFURLRequestSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = C98349A3949D96E28B704577C3FBD93D /* AFURLRequestSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 37CF89A4B6B4B38FBDCB721BE3F4BB23 /* AFAutoPurgingImageCache.h in Headers */ = {isa = PBXBuildFile; fileRef = D26C2DA79AF6EE48FC34AB0007FAB254 /* AFAutoPurgingImageCache.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 390F9231081DBC9E928F7DA242E9B21C /* UIActivityIndicatorView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 686B4D8363BDFC57FAD7B4E5F4D2315E /* UIActivityIndicatorView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3BDBD076820682F665FF006779441DF2 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = B066DCC232A3412058AF0FE68AC87555 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m */; }; + 3D3F97BA5040F3CB3D804D28C0FE0E09 /* AFURLResponseSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 4E9677228E111EE5F13FC0C3E4A5E56B /* AFURLResponseSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 3FD7BDAC8D5D028A3AA01259C5C4F50B /* WKWebView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 314ED44F96F23777209F3B5B201EC28F /* WKWebView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 407CA6814B4BB8CF244BCD44F12C2B1E /* AFURLResponseSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = F65B02365A0009B6013A68884E35BCDB /* AFURLResponseSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4988642C2A81E175E24D209805E18E1E /* AFURLSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = CB153431886BD9D6E23BEE48E4605523 /* AFURLSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4ADD926D3E83441511A24DC32C6AD8B9 /* AFSecurityPolicy.h in Headers */ = {isa = PBXBuildFile; fileRef = 4AE59FB0F479D67CC9DB1FA33A13FEB0 /* AFSecurityPolicy.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4DC93F3BDF54B08FA3E989CD4DF017CC /* AFNetworkReachabilityManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 2CCD01B8926DD3CC2BC1C5E3801E89C1 /* AFNetworkReachabilityManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 4DC9BFFFE39173261B27CBACE7F7A579 /* WKWebView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 314ED44F96F23777209F3B5B201EC28F /* WKWebView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 4E353D5FB72CEA23621F16EDAA942E09 /* AFNetworking-tvOS-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 5B587388BA9FF7589045158CC6202D84 /* AFNetworking-tvOS-dummy.m */; }; + 4FA785073D59201473891C595459878C /* UIRefreshControl+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 579F9AC7B26F3A0693CDE92E9C993408 /* UIRefreshControl+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 506DCEEFD25E096799010C8F02ED6AAF /* AFNetworkReachabilityManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 2CCD01B8926DD3CC2BC1C5E3801E89C1 /* AFNetworkReachabilityManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 510BAE388559AAFAF09621AF6DBD4AC7 /* UIActivityIndicatorView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 0EE6827796778C8CE02B24816B2B31D2 /* UIActivityIndicatorView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 525D8AC53942E18812D833E891BA5FAA /* AFNetworkReachabilityManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 327ADD0333649802839E2A2C000ED53E /* AFNetworkReachabilityManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 61FDC6DA3F2FF9C1AE0475734D61B780 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 65BA199597487B0AADE858C984524C41 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m */; }; + 6460FB16F2BB8A75E4FED97DF1DB366C /* AFURLResponseSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = F65B02365A0009B6013A68884E35BCDB /* AFURLResponseSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 68241C5398FFB4A122CBAD6C3E177571 /* AFNetworking-c94d3492-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 45B30A25FB4AAEF8F7796C959CA47E38 /* AFNetworking-c94d3492-dummy.m */; }; + 6828FECA7F26C5857A9F9B1DFC829975 /* AFImageDownloader.h in Headers */ = {isa = PBXBuildFile; fileRef = EFC81F7AAE5D74995DEF8DB5B42ED1F7 /* AFImageDownloader.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6BEAD88E0859B1416B1892E021329FF7 /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2985EB7A156AB244ED557FD24402B01A /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m */; }; + 6C8B32A88D508E9CA61B929CAFE87B01 /* AFURLSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C78F20DD353F82A9F2BE4372C3676A8E /* AFURLSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 6C9BBF821F2A026527E4AF05B2CD0A2B /* AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 4267D0DD6CC909CA1365961F32277469 /* AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 6E1F6EBA486DF03FE9BB69A11FCCD2F4 /* AFURLResponseSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 4E9677228E111EE5F13FC0C3E4A5E56B /* AFURLResponseSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 764C08815786725BF583688078BF5485 /* UIProgressView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9D75AA168BE353752BB0A85015B7C3 /* UIProgressView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 775F1C513B1C0292C50B78DBB304C280 /* UIButton+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 18411708A2168BD4D05CC325E63B4520 /* UIButton+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 7FB79BD0FEC16C39BA0265C6BF9BB3E7 /* UIRefreshControl+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 9F64A7FB4F12171BD021EA126B8C02A2 /* UIRefreshControl+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 83BC78F53978D9C734A3632381E6E7B9 /* AFURLRequestSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = C98349A3949D96E28B704577C3FBD93D /* AFURLRequestSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 87CD3F1257890D64785EDEC31854AF92 /* AFCompatibilityMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 3BAC6FD9D6CCF7EBED5A2ADE91240C07 /* AFCompatibilityMacros.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8A8EC2808F49A59C41E1DDD691C20388 /* AFURLRequestSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = AB5935B63E6BC04EBDB2488B75ED9B66 /* AFURLRequestSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8D4D449BD4F6F4B1D46724F7DBDE572B /* AFSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = F59E9232A74984C9E59E8FC210FCD380 /* AFSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 8D8B8577D0DDED56FFC4D64DBBB5411B /* UIActivityIndicatorView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 0EE6827796778C8CE02B24816B2B31D2 /* UIActivityIndicatorView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 8FF06860EB5A54A004FA6CCABEFA9500 /* AFImageDownloader.m in Sources */ = {isa = PBXBuildFile; fileRef = ADFFBE2A9A866EEE72C875B5FDDBC239 /* AFImageDownloader.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 973B48F62B7685FA97FD8B035A85D22D /* UIKit+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = CDFB660B91A8388F6389816F3EDC9BB2 /* UIKit+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 97D622BD8ECFA2FDBCA572DFFC7A4C19 /* AFAutoPurgingImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 7F72626D15557021AB272693F2BC1642 /* AFAutoPurgingImageCache.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9D813A28BFBDD28C967504C5243E2D06 /* AFCompatibilityMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 3BAC6FD9D6CCF7EBED5A2ADE91240C07 /* AFCompatibilityMacros.h */; settings = {ATTRIBUTES = (Project, ); }; }; + 9D94D6600E015A0569E4C1F800EF4F40 /* UIProgressView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F9D75AA168BE353752BB0A85015B7C3 /* UIProgressView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + 9F5A4CEA3C0012972DE9D1D8CF23FBD2 /* UIRefreshControl+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 579F9AC7B26F3A0693CDE92E9C993408 /* UIRefreshControl+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + A8A90B1A2BDD9CFABF01A87C29614CC6 /* AFAutoPurgingImageCache.h in Headers */ = {isa = PBXBuildFile; fileRef = D26C2DA79AF6EE48FC34AB0007FAB254 /* AFAutoPurgingImageCache.h */; settings = {ATTRIBUTES = (Project, ); }; }; + ABCD3B440CC85CCF5F5A022F8932CA55 /* UIProgressView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 50DE554E80EA5B937DBD4745AF2FE78B /* UIProgressView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B2ACC2617F38911BDDD477CE23D33875 /* AFNetworkReachabilityManager.h in Headers */ = {isa = PBXBuildFile; fileRef = 327ADD0333649802839E2A2C000ED53E /* AFNetworkReachabilityManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + B75C457242A4E5E41F7BFB6EB36A2A1B /* AFSecurityPolicy.h in Headers */ = {isa = PBXBuildFile; fileRef = 4AE59FB0F479D67CC9DB1FA33A13FEB0 /* AFSecurityPolicy.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BA5EA55AF0F0C7369A8A9F8E2982B7A3 /* AFHTTPSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = FEBC9031D02D5EF5B9A35F1C94395A7A /* AFHTTPSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BAE1798FDCE992187591B5D41BAE51CF /* AFURLSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C78F20DD353F82A9F2BE4372C3676A8E /* AFURLSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + BC29817C5A073F75FA46F323AC36DAFD /* AFURLSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = CB153431886BD9D6E23BEE48E4605523 /* AFURLSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + BCB36E84146B13278F351E5FA8B8CB2E /* AFURLSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = C78F20DD353F82A9F2BE4372C3676A8E /* AFURLSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + C4FB40F787EDB876633D3928EB629CD3 /* WKWebView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 83C2F143281A61B433F6DE7780B2258C /* WKWebView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + CD8B098C554044EDB4DC22C091CB29E5 /* AFURLSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = CB153431886BD9D6E23BEE48E4605523 /* AFURLSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CD9F1F8C86C0B8BCDE4B1A4FEABCBB97 /* UIImageView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = A30EB9730E5ADCF34AD2FE27A7A4BDF9 /* UIImageView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + CEEA4FB94BF5BA05324D6016EC101765 /* AFURLResponseSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = 4E9677228E111EE5F13FC0C3E4A5E56B /* AFURLResponseSerialization.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D01EE7D2FE30AFF0DC55E649702CD37B /* AFHTTPSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = FEBC9031D02D5EF5B9A35F1C94395A7A /* AFHTTPSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D2B8DC7906E1315EC757310B6F55B3AB /* UIImageView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = A405B1A2FC41BBFB450CB89D0541B50A /* UIImageView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D30B31882C4B35D7264E121E775AD44D /* AFAutoPurgingImageCache.m in Sources */ = {isa = PBXBuildFile; fileRef = 7F72626D15557021AB272693F2BC1642 /* AFAutoPurgingImageCache.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D64BA731F6AE8CB7EFC142B2D4D2FAF7 /* UIButton+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = BBE6A9BD4C8D02893C2A69A0C486248B /* UIButton+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + D719273C32F2321623652F7871D579F6 /* AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 4267D0DD6CC909CA1365961F32277469 /* AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + D7A2AA536432365408FBAB4E8145AC97 /* AFCompatibilityMacros.h in Headers */ = {isa = PBXBuildFile; fileRef = 3BAC6FD9D6CCF7EBED5A2ADE91240C07 /* AFCompatibilityMacros.h */; settings = {ATTRIBUTES = (Project, ); }; }; + DD5C0A9385F1AD7A8E538B89A1E42DAC /* AFSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = F59E9232A74984C9E59E8FC210FCD380 /* AFSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E0105A7CF3A99F4A040DA05B1680DE6A /* AFSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = F59E9232A74984C9E59E8FC210FCD380 /* AFSecurityPolicy.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E4F89F457F88F191272B6CA83D16B01D /* AFHTTPSessionManager.m in Sources */ = {isa = PBXBuildFile; fileRef = B5272C8AAB9087D9182279EA9B89398E /* AFHTTPSessionManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E6A24673C0860870EEBBD1DEB39DF8C1 /* WKWebView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 83C2F143281A61B433F6DE7780B2258C /* WKWebView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E7D85F47D843EBEB7A6D6E13F8611440 /* UIActivityIndicatorView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = 686B4D8363BDFC57FAD7B4E5F4D2315E /* UIActivityIndicatorView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + E8AEDB5261C52FDFBA79FD89F431C312 /* AFNetworkActivityIndicatorManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 23D1BEF5C3C34B8168135C9B3BD49DEE /* AFNetworkActivityIndicatorManager.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + EBEDEB3C2DCBB788A782184B1C8EC781 /* AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 4267D0DD6CC909CA1365961F32277469 /* AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + EE26078D0381139C44C39A7B9B17FF0C /* UIButton+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 18411708A2168BD4D05CC325E63B4520 /* UIButton+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F063E8B4146556C8D0497773EC456BE0 /* UIImageView+AFNetworking.m in Sources */ = {isa = PBXBuildFile; fileRef = A405B1A2FC41BBFB450CB89D0541B50A /* UIImageView+AFNetworking.m */; settings = {COMPILER_FLAGS = "-w -Xanalyzer -analyzer-disable-all-checks"; }; }; + F2C63635E347AD481C4717ED22C92C53 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 6B5720EE7DBDBCE67C3A31BE84D89ECC /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m */; }; + F5786700EFC0469EA182A203BFC8C084 /* UIKit+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = CDFB660B91A8388F6389816F3EDC9BB2 /* UIKit+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F66B19ADD76B8AB618C5434A2AB799BE /* AFURLResponseSerialization.h in Headers */ = {isa = PBXBuildFile; fileRef = F65B02365A0009B6013A68884E35BCDB /* AFURLResponseSerialization.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F7C59A04713B738E1B7356BF53E0C06F /* UIProgressView+AFNetworking.h in Headers */ = {isa = PBXBuildFile; fileRef = 50DE554E80EA5B937DBD4745AF2FE78B /* UIProgressView+AFNetworking.h */; settings = {ATTRIBUTES = (Project, ); }; }; + F7F76726F3F02DBF1A56C0068C2088D5 /* AFHTTPSessionManager.h in Headers */ = {isa = PBXBuildFile; fileRef = FEBC9031D02D5EF5B9A35F1C94395A7A /* AFHTTPSessionManager.h */; settings = {ATTRIBUTES = (Project, ); }; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 3E8F186EC3374BF269EF3836BA0B646E /* PBXContainerItemProxy */ = { + 293928BAFAB76DE03530DC64DF5D133E /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 294529C77198ECB248E415B29FDC9441; + remoteGlobalIDString = A40CE905A4774C859184BC4AA3767B1D; remoteInfo = "AFNetworking-iOS"; }; - 512D17CE7818DBB43842FC8176228B38 /* PBXContainerItemProxy */ = { + 6A6CF474A34135ED057D560C98F4E33E /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = D70B3FB3184A448A3E88112CBF71A2AA; - remoteInfo = "AFNetworking-tvOS"; + remoteGlobalIDString = A40CE905A4774C859184BC4AA3767B1D; + remoteInfo = "AFNetworking-iOS"; }; - A498827688C4618D5E134F7CA98F0A02 /* PBXContainerItemProxy */ = { + C519096921A3DEA93936B52729EDB755 /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 294529C77198ECB248E415B29FDC9441; - remoteInfo = "AFNetworking-iOS"; + remoteGlobalIDString = E8D7B0AF5976ACD3CF5C49E400D39B8F; + remoteInfo = "AFNetworking-c94d3492"; }; - F85EB9E30D7904CCA7FF65EE3B498A01 /* PBXContainerItemProxy */ = { + D552B1F24BF815EB83CA37D80F3C790F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; - containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + containerPortal = BFDFE7DC352907FC980B868725387E98 /* Project object */; proxyType = 1; - remoteGlobalIDString = 163E987AE2E029D9EB0B15C75EDE7869; - remoteInfo = "AFNetworking-c94d3492"; + remoteGlobalIDString = DA88B26FFB2107D8AB235DC0EA18CFA3; + remoteInfo = "AFNetworking-tvOS"; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 0121AF19B4DEE0ED795452A716E6D45F /* UIRefreshControl+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIRefreshControl+AFNetworking.h"; path = "UIKit+AFNetworking/UIRefreshControl+AFNetworking.h"; sourceTree = ""; }; - 050C64A16F4965CDA1CDB676C9163041 /* AFNetworking-c94d3492-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "AFNetworking-c94d3492-prefix.pch"; sourceTree = ""; }; - 067029DEE90E57DFFB5748B732462B45 /* UIImageView+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImageView+AFNetworking.h"; path = "UIKit+AFNetworking/UIImageView+AFNetworking.h"; sourceTree = ""; }; - 067E6D26AAF8113D673714F5797BE715 /* UIProgressView+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIProgressView+AFNetworking.m"; path = "UIKit+AFNetworking/UIProgressView+AFNetworking.m"; sourceTree = ""; }; - 07573BF6F4B141A9D9FE32643F3BCDA6 /* libPods-TestingPods-OHHTTPStubs Mac Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-TestingPods-OHHTTPStubs Mac Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 0B4EA1A2506057DEBCB41E0A519B8F4B /* libAFNetworking-c94d3492.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libAFNetworking-c94d3492.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 1D2CA139ADDD2E9918936FDF6B7650C6 /* AFHTTPSessionManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFHTTPSessionManager.h; path = AFNetworking/AFHTTPSessionManager.h; sourceTree = ""; }; - 224B56DD647BF513E9D8F34F6A809DF6 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig"; sourceTree = ""; }; - 225EA8457A11BA3434034790BCDC374E /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig"; sourceTree = ""; }; - 2802EA0AF2A76C463F3C503A0FE4B8A1 /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m"; sourceTree = ""; }; - 284C26DCEC89225FE257E8AF6557BAED /* AFNetworking-c94d3492-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "AFNetworking-c94d3492-dummy.m"; sourceTree = ""; }; - 375ECC43A9266AB5C20E91070910BE33 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig"; sourceTree = ""; }; - 3D3DAE5E44B0768704E76DA7829CEA05 /* UIRefreshControl+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIRefreshControl+AFNetworking.m"; path = "UIKit+AFNetworking/UIRefreshControl+AFNetworking.m"; sourceTree = ""; }; - 419A7B2C9EBA571FBEBE2914F2246A01 /* UIActivityIndicatorView+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIActivityIndicatorView+AFNetworking.m"; path = "UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.m"; sourceTree = ""; }; - 45A396A85D76FDCBD6D52CF077E055B3 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig"; sourceTree = ""; }; - 4622E5A19C9D5A8DDBED0433C745C5C9 /* AFURLSessionManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFURLSessionManager.h; path = AFNetworking/AFURLSessionManager.h; sourceTree = ""; }; - 490EC63B38541DE3F08700C6B42BA8A1 /* AFImageDownloader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFImageDownloader.h; path = "UIKit+AFNetworking/AFImageDownloader.h"; sourceTree = ""; }; - 493EC68E4539B78F01F0D9C3B778DD99 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown"; sourceTree = ""; }; - 5154A04BF6B939CC5C91B26BC3B235C6 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig"; sourceTree = ""; }; - 523760D236AEACFBD199B6042A6D92D4 /* AFNetworkActivityIndicatorManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFNetworkActivityIndicatorManager.m; path = "UIKit+AFNetworking/AFNetworkActivityIndicatorManager.m"; sourceTree = ""; }; - 5700278C2E8921B744D90A32E4B2E33E /* AFNetworking-tvOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "AFNetworking-tvOS.xcconfig"; path = "../AFNetworking-tvOS/AFNetworking-tvOS.xcconfig"; sourceTree = ""; }; - 57B933FBD9EB44273FE9CF231ED93FE5 /* Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist"; sourceTree = ""; }; - 5AA57189482E366F3DDEB76A906DAC8B /* UIButton+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIButton+AFNetworking.m"; path = "UIKit+AFNetworking/UIButton+AFNetworking.m"; sourceTree = ""; }; - 5AC90BD8F86F957D3DC47D89B2BB040B /* AFNetworkReachabilityManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFNetworkReachabilityManager.h; path = AFNetworking/AFNetworkReachabilityManager.h; sourceTree = ""; }; - 64D97EE63038FA87063A3BE46DA25121 /* Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig"; sourceTree = ""; }; - 67E13C37EDB0E2B2CCA2C622D66E8385 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist"; sourceTree = ""; }; - 6A41CBBC25FDD16D2765EEC7598B9DEB /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist"; sourceTree = ""; }; - 6FBA92CB9D96563B602A87AAFCFCAD7C /* AFNetworking-c94d3492.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "AFNetworking-c94d3492.xcconfig"; sourceTree = ""; }; - 7118A16B4CE6C2F5425CDEEE77040A9A /* UIImage+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImage+AFNetworking.h"; path = "UIKit+AFNetworking/UIImage+AFNetworking.h"; sourceTree = ""; }; - 7691028C093F81E5766AD53ED2F6E0B8 /* UIImageView+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImageView+AFNetworking.m"; path = "UIKit+AFNetworking/UIImageView+AFNetworking.m"; sourceTree = ""; }; - 795C1F36B6AA25F784C83826F0CD6062 /* libAFNetworking-iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libAFNetworking-iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 7CB1CB5970F98C80FF4808D6C6E1BF57 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m"; sourceTree = ""; }; - 82DF63A147D90320B4812AFB422015AA /* AFURLRequestSerialization.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFURLRequestSerialization.m; path = AFNetworking/AFURLRequestSerialization.m; sourceTree = ""; }; - 82F53B7CEF2CEEC442FCE43999EC54ED /* UIWebView+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIWebView+AFNetworking.m"; path = "UIKit+AFNetworking/UIWebView+AFNetworking.m"; sourceTree = ""; }; - 84C2852D436E477D989044D9F70FD4CF /* AFNetworking-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "AFNetworking-iOS-dummy.m"; path = "../AFNetworking-iOS/AFNetworking-iOS-dummy.m"; sourceTree = ""; }; - 86C0DCC2C56D6DBE078F6EB0D0F5ADA8 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown"; sourceTree = ""; }; - 8CC1FF5E4D9879068E2CA6DD5C9FDAD1 /* AFNetworkReachabilityManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFNetworkReachabilityManager.m; path = AFNetworking/AFNetworkReachabilityManager.m; sourceTree = ""; }; - 8E520EE78F252B3D97595A45BD13A540 /* AFNetworkActivityIndicatorManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFNetworkActivityIndicatorManager.h; path = "UIKit+AFNetworking/AFNetworkActivityIndicatorManager.h"; sourceTree = ""; }; - 8F0339F512FBBF8E15BCFDFAC7119ACD /* AFSecurityPolicy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFSecurityPolicy.m; path = AFNetworking/AFSecurityPolicy.m; sourceTree = ""; }; - 927D82381B7AF1B27D8797DBA9F40E1A /* libPods-TestingPods-OHHTTPStubs tvOS Fmk Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-TestingPods-OHHTTPStubs tvOS Fmk Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 98F9A5A8A5CBAEFBC64CC66328EC4E99 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown"; sourceTree = ""; }; - 98FF5E774D2798BE804928E49ABF28ED /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist"; sourceTree = ""; }; - 9C0FDF8B2D2F3C5D0A765353B2CBCD33 /* AFNetworking-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "AFNetworking-iOS-prefix.pch"; path = "../AFNetworking-iOS/AFNetworking-iOS-prefix.pch"; sourceTree = ""; }; - A1133EF1E8EBE4F5AEB6EEFEE986A103 /* AFNetworking-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "AFNetworking-tvOS-prefix.pch"; path = "../AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch"; sourceTree = ""; }; - A25308E5B3B2A8F72FAA398BA1C009A6 /* AFAutoPurgingImageCache.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFAutoPurgingImageCache.m; path = "UIKit+AFNetworking/AFAutoPurgingImageCache.m"; sourceTree = ""; }; - A39FEEABC1551F49F0B0FE21D2AD9D6C /* AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFNetworking.h; path = AFNetworking/AFNetworking.h; sourceTree = ""; }; - A3B7FFADD03754D2228E8993F0F0CF2A /* AFURLRequestSerialization.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFURLRequestSerialization.h; path = AFNetworking/AFURLRequestSerialization.h; sourceTree = ""; }; - A4EA2BE1C35EB50F0B89D8423EB6F7B7 /* AFSecurityPolicy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFSecurityPolicy.h; path = AFNetworking/AFSecurityPolicy.h; sourceTree = ""; }; - A7FFBE99241E2C30FB09E85564DA1D88 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig"; sourceTree = ""; }; - A9C1FF3C99BB9C97E4C549796C5A4098 /* libPods-TestingPods-OHHTTPStubs iOS Lib Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-TestingPods-OHHTTPStubs iOS Lib Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - AB97A15AA490770939273DBC0069730A /* AFURLSessionManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFURLSessionManager.m; path = AFNetworking/AFURLSessionManager.m; sourceTree = ""; }; - B13F476E703C08E81870243C9FFE7752 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m"; sourceTree = ""; }; - B36AB396275697EEE1A5B13BA8A38FE3 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; name = Podfile; path = ../../../../System/Volumes/Data/Users/jeff/OHHTTPStubs/Podfile; sourceTree = ""; tabWidth = 2; }; - B7251B546B1E78F8558F39EABEA675B7 /* AFHTTPSessionManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFHTTPSessionManager.m; path = AFNetworking/AFHTTPSessionManager.m; sourceTree = ""; }; - B9DEFEF6F25E74F9117C91B173D22A96 /* UIProgressView+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIProgressView+AFNetworking.h"; path = "UIKit+AFNetworking/UIProgressView+AFNetworking.h"; sourceTree = ""; }; - C0B108B686488E21A171DAA4D18AD881 /* AFURLResponseSerialization.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFURLResponseSerialization.m; path = AFNetworking/AFURLResponseSerialization.m; sourceTree = ""; }; - CF9CF6605A13B92B6E686264E06C3CF6 /* AFAutoPurgingImageCache.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFAutoPurgingImageCache.h; path = "UIKit+AFNetworking/AFAutoPurgingImageCache.h"; sourceTree = ""; }; - D1ACB67B32DAEB8AD59AA058818CBD97 /* AFImageDownloader.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFImageDownloader.m; path = "UIKit+AFNetworking/AFImageDownloader.m"; sourceTree = ""; }; - D2B487F97B81E3910E1CA2A32AB6FF96 /* AFNetworking-iOS.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "AFNetworking-iOS.xcconfig"; path = "../AFNetworking-iOS/AFNetworking-iOS.xcconfig"; sourceTree = ""; }; - D7E209D170F390B80C67336D1D58526E /* UIWebView+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIWebView+AFNetworking.h"; path = "UIKit+AFNetworking/UIWebView+AFNetworking.h"; sourceTree = ""; }; - D8FA05DE98BEC9B0C224676B3C39B74A /* UIKit+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIKit+AFNetworking.h"; path = "UIKit+AFNetworking/UIKit+AFNetworking.h"; sourceTree = ""; }; - DFA732EC710C331C88DDC0E923D582A5 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m"; sourceTree = ""; }; - E87B284887D29B72E6EA5F7E15004BD3 /* Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown"; sourceTree = ""; }; - ED29F21403BDB1E5DD379E272051A69E /* AFNetworking-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "AFNetworking-tvOS-dummy.m"; path = "../AFNetworking-tvOS/AFNetworking-tvOS-dummy.m"; sourceTree = ""; }; - EDCEAD97A5F72670715036A6AB785B92 /* UIActivityIndicatorView+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIActivityIndicatorView+AFNetworking.h"; path = "UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.h"; sourceTree = ""; }; - F048257A3F3D2308F1C9ADADAD0C0111 /* libPods-TestingPods-OHHTTPStubs iOS Fmk Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-TestingPods-OHHTTPStubs iOS Fmk Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - F2BCCE7C59CC730D5599FD2277D210CE /* UIButton+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIButton+AFNetworking.h"; path = "UIKit+AFNetworking/UIButton+AFNetworking.h"; sourceTree = ""; }; - F3EC32E0205FA2F4314674D854DCC8B6 /* AFURLResponseSerialization.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFURLResponseSerialization.h; path = AFNetworking/AFURLResponseSerialization.h; sourceTree = ""; }; - F75CD6E2E41BE668BB8D768FD76FB0EC /* Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig"; sourceTree = ""; }; - F9376FC632354CA218B3C47EAB560527 /* libAFNetworking-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libAFNetworking-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 0C72D958C479A08FDDA2E4F02B2DFC65 /* libPods-TestingPods-OHHTTPStubs Mac Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-TestingPods-OHHTTPStubs Mac Tests.a"; path = "libPods-TestingPods-OHHTTPStubs Mac Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 0EE6827796778C8CE02B24816B2B31D2 /* UIActivityIndicatorView+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIActivityIndicatorView+AFNetworking.h"; path = "UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.h"; sourceTree = ""; }; + 18411708A2168BD4D05CC325E63B4520 /* UIButton+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIButton+AFNetworking.h"; path = "UIKit+AFNetworking/UIButton+AFNetworking.h"; sourceTree = ""; }; + 1F9D75AA168BE353752BB0A85015B7C3 /* UIProgressView+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIProgressView+AFNetworking.m"; path = "UIKit+AFNetworking/UIProgressView+AFNetworking.m"; sourceTree = ""; }; + 23D1BEF5C3C34B8168135C9B3BD49DEE /* AFNetworkActivityIndicatorManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFNetworkActivityIndicatorManager.m; path = "UIKit+AFNetworking/AFNetworkActivityIndicatorManager.m"; sourceTree = ""; }; + 2985EB7A156AB244ED557FD24402B01A /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m"; sourceTree = ""; }; + 2CCD01B8926DD3CC2BC1C5E3801E89C1 /* AFNetworkReachabilityManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFNetworkReachabilityManager.m; path = AFNetworking/AFNetworkReachabilityManager.m; sourceTree = ""; }; + 314ED44F96F23777209F3B5B201EC28F /* WKWebView+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "WKWebView+AFNetworking.h"; path = "UIKit+AFNetworking/WKWebView+AFNetworking.h"; sourceTree = ""; }; + 327ADD0333649802839E2A2C000ED53E /* AFNetworkReachabilityManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFNetworkReachabilityManager.h; path = AFNetworking/AFNetworkReachabilityManager.h; sourceTree = ""; }; + 3BAC6FD9D6CCF7EBED5A2ADE91240C07 /* AFCompatibilityMacros.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFCompatibilityMacros.h; path = AFNetworking/AFCompatibilityMacros.h; sourceTree = ""; }; + 3C3BA82DEE72E39C08D4650A93AA4A9A /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig"; sourceTree = ""; }; + 4267D0DD6CC909CA1365961F32277469 /* AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFNetworking.h; path = AFNetworking/AFNetworking.h; sourceTree = ""; }; + 45B30A25FB4AAEF8F7796C959CA47E38 /* AFNetworking-c94d3492-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "AFNetworking-c94d3492-dummy.m"; sourceTree = ""; }; + 48F272CE28D4F19EE5842BFB5988F621 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown"; sourceTree = ""; }; + 4AE59FB0F479D67CC9DB1FA33A13FEB0 /* AFSecurityPolicy.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFSecurityPolicy.h; path = AFNetworking/AFSecurityPolicy.h; sourceTree = ""; }; + 4B49ECEF4F1253A2AEA4ADAEF1A61E19 /* AFNetworking-iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "AFNetworking-iOS.debug.xcconfig"; path = "../AFNetworking-iOS/AFNetworking-iOS.debug.xcconfig"; sourceTree = ""; }; + 4E9677228E111EE5F13FC0C3E4A5E56B /* AFURLResponseSerialization.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFURLResponseSerialization.m; path = AFNetworking/AFURLResponseSerialization.m; sourceTree = ""; }; + 50DE554E80EA5B937DBD4745AF2FE78B /* UIProgressView+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIProgressView+AFNetworking.h"; path = "UIKit+AFNetworking/UIProgressView+AFNetworking.h"; sourceTree = ""; }; + 53ACAFE96B29B5D97D62E73B6C2DB73C /* AFNetworking-iOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "AFNetworking-iOS-dummy.m"; path = "../AFNetworking-iOS/AFNetworking-iOS-dummy.m"; sourceTree = ""; }; + 579F9AC7B26F3A0693CDE92E9C993408 /* UIRefreshControl+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIRefreshControl+AFNetworking.h"; path = "UIKit+AFNetworking/UIRefreshControl+AFNetworking.h"; sourceTree = ""; }; + 5B587388BA9FF7589045158CC6202D84 /* AFNetworking-tvOS-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "AFNetworking-tvOS-dummy.m"; path = "../AFNetworking-tvOS/AFNetworking-tvOS-dummy.m"; sourceTree = ""; }; + 5FA19907CC61635AE61E7208B2D1CCBA /* AFNetworking-tvOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "AFNetworking-tvOS.release.xcconfig"; path = "../AFNetworking-tvOS/AFNetworking-tvOS.release.xcconfig"; sourceTree = ""; }; + 65BA199597487B0AADE858C984524C41 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m"; sourceTree = ""; }; + 686B4D8363BDFC57FAD7B4E5F4D2315E /* UIActivityIndicatorView+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIActivityIndicatorView+AFNetworking.m"; path = "UIKit+AFNetworking/UIActivityIndicatorView+AFNetworking.m"; sourceTree = ""; }; + 6A78FDA791B6D439081E2928E8EBAF70 /* AFNetworking-tvOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "AFNetworking-tvOS.debug.xcconfig"; path = "../AFNetworking-tvOS/AFNetworking-tvOS.debug.xcconfig"; sourceTree = ""; }; + 6B5720EE7DBDBCE67C3A31BE84D89ECC /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m"; sourceTree = ""; }; + 7492AEBFE9AD87377CF105E4909A01CD /* libPods-TestingPods-OHHTTPStubs tvOS Fmk Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-TestingPods-OHHTTPStubs tvOS Fmk Tests.a"; path = "libPods-TestingPods-OHHTTPStubs tvOS Fmk Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 7A664291C089DFD2069DF80FE26515CE /* Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown"; sourceTree = ""; }; + 7EE4ABD135AE98DA67A1F9A79ED437B2 /* libAFNetworking-iOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libAFNetworking-iOS.a"; path = "libAFNetworking-iOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 7F72626D15557021AB272693F2BC1642 /* AFAutoPurgingImageCache.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFAutoPurgingImageCache.m; path = "UIKit+AFNetworking/AFAutoPurgingImageCache.m"; sourceTree = ""; }; + 83C2F143281A61B433F6DE7780B2258C /* WKWebView+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "WKWebView+AFNetworking.m"; path = "UIKit+AFNetworking/WKWebView+AFNetworking.m"; sourceTree = ""; }; + 89C637F4C03075785FD843D8A1DB0D3A /* AFNetworking-iOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "AFNetworking-iOS-prefix.pch"; path = "../AFNetworking-iOS/AFNetworking-iOS-prefix.pch"; sourceTree = ""; }; + 89DC3CF5D938A26C8A3AE40A2ACD81F1 /* libAFNetworking-c94d3492.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libAFNetworking-c94d3492.a"; path = "libAFNetworking-c94d3492.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 8EABF80FC26E102BB987C5104679F3E4 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist"; sourceTree = ""; }; + 90FAC89A155852ABAE19F259D34099F7 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist"; sourceTree = ""; }; + 919D4F7935D71D4A35C72DEF614D9BFA /* AFNetworking-tvOS-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "AFNetworking-tvOS-prefix.pch"; path = "../AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch"; sourceTree = ""; }; + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; indentWidth = 2; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; tabWidth = 2; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9F64A7FB4F12171BD021EA126B8C02A2 /* UIRefreshControl+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIRefreshControl+AFNetworking.m"; path = "UIKit+AFNetworking/UIRefreshControl+AFNetworking.m"; sourceTree = ""; }; + A30EB9730E5ADCF34AD2FE27A7A4BDF9 /* UIImageView+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIImageView+AFNetworking.h"; path = "UIKit+AFNetworking/UIImageView+AFNetworking.h"; sourceTree = ""; }; + A348B42049E227F96C3F232D3C2B976D /* AFNetworkActivityIndicatorManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFNetworkActivityIndicatorManager.h; path = "UIKit+AFNetworking/AFNetworkActivityIndicatorManager.h"; sourceTree = ""; }; + A405B1A2FC41BBFB450CB89D0541B50A /* UIImageView+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIImageView+AFNetworking.m"; path = "UIKit+AFNetworking/UIImageView+AFNetworking.m"; sourceTree = ""; }; + A9B678DDD0FFE239F8CC1C40A3F77EE9 /* libAFNetworking-tvOS.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libAFNetworking-tvOS.a"; path = "libAFNetworking-tvOS.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + AB5935B63E6BC04EBDB2488B75ED9B66 /* AFURLRequestSerialization.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFURLRequestSerialization.m; path = AFNetworking/AFURLRequestSerialization.m; sourceTree = ""; }; + AD331865889A80C610D0BA4C120B7A91 /* libPods-TestingPods-OHHTTPStubs iOS Fmk Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-TestingPods-OHHTTPStubs iOS Fmk Tests.a"; path = "libPods-TestingPods-OHHTTPStubs iOS Fmk Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + ADFFBE2A9A866EEE72C875B5FDDBC239 /* AFImageDownloader.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFImageDownloader.m; path = "UIKit+AFNetworking/AFImageDownloader.m"; sourceTree = ""; }; + B066DCC232A3412058AF0FE68AC87555 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m"; sourceTree = ""; }; + B5272C8AAB9087D9182279EA9B89398E /* AFHTTPSessionManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFHTTPSessionManager.m; path = AFNetworking/AFHTTPSessionManager.m; sourceTree = ""; }; + B63032D78150E4A6B2887540A6F0CE17 /* AFNetworking-c94d3492-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "AFNetworking-c94d3492-prefix.pch"; sourceTree = ""; }; + BBE6A9BD4C8D02893C2A69A0C486248B /* UIButton+AFNetworking.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "UIButton+AFNetworking.m"; path = "UIKit+AFNetworking/UIButton+AFNetworking.m"; sourceTree = ""; }; + C5C9DA79D891FF65A391C1BE592E65D6 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig"; sourceTree = ""; }; + C65226CA0FE3C199A375875670567884 /* Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig"; sourceTree = ""; }; + C78F20DD353F82A9F2BE4372C3676A8E /* AFURLSessionManager.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFURLSessionManager.m; path = AFNetworking/AFURLSessionManager.m; sourceTree = ""; }; + C98349A3949D96E28B704577C3FBD93D /* AFURLRequestSerialization.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFURLRequestSerialization.h; path = AFNetworking/AFURLRequestSerialization.h; sourceTree = ""; }; + CB153431886BD9D6E23BEE48E4605523 /* AFURLSessionManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFURLSessionManager.h; path = AFNetworking/AFURLSessionManager.h; sourceTree = ""; }; + CDFB660B91A8388F6389816F3EDC9BB2 /* UIKit+AFNetworking.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "UIKit+AFNetworking.h"; path = "UIKit+AFNetworking/UIKit+AFNetworking.h"; sourceTree = ""; }; + D26C2DA79AF6EE48FC34AB0007FAB254 /* AFAutoPurgingImageCache.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFAutoPurgingImageCache.h; path = "UIKit+AFNetworking/AFAutoPurgingImageCache.h"; sourceTree = ""; }; + D59EE0D3224BB235CD5822D94DE0FE22 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig"; sourceTree = ""; }; + D7332B32E284DBA4723958A57A03EED3 /* Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist"; sourceTree = ""; }; + D83ECF7DF41CCE8D1CDF31AE8128434A /* libPods-TestingPods-OHHTTPStubs iOS Lib Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; name = "libPods-TestingPods-OHHTTPStubs iOS Lib Tests.a"; path = "libPods-TestingPods-OHHTTPStubs iOS Lib Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + DB8247269F859CCF6E338FD603326859 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig"; sourceTree = ""; }; + E3A58B82C1E4462CDC21E387C3A1588D /* AFNetworking-c94d3492.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "AFNetworking-c94d3492.release.xcconfig"; sourceTree = ""; }; + E5787EE7E5B0B0BE7C0AABB594BC583B /* AFNetworking-iOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "AFNetworking-iOS.release.xcconfig"; path = "../AFNetworking-iOS/AFNetworking-iOS.release.xcconfig"; sourceTree = ""; }; + EE7CC8468FF010D971A0BAFF20374AEA /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig"; sourceTree = ""; }; + EFC81F7AAE5D74995DEF8DB5B42ED1F7 /* AFImageDownloader.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFImageDownloader.h; path = "UIKit+AFNetworking/AFImageDownloader.h"; sourceTree = ""; }; + F04B91FA80C99AE730CFBF2BF9F4B41B /* AFNetworking-c94d3492.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "AFNetworking-c94d3492.debug.xcconfig"; sourceTree = ""; }; + F187AB52818B87B4E698184FA9EF2D50 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown"; sourceTree = ""; }; + F58F9B920BF2F2D39DA726F7A00522FC /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig"; sourceTree = ""; }; + F59E9232A74984C9E59E8FC210FCD380 /* AFSecurityPolicy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = AFSecurityPolicy.m; path = AFNetworking/AFSecurityPolicy.m; sourceTree = ""; }; + F65B02365A0009B6013A68884E35BCDB /* AFURLResponseSerialization.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFURLResponseSerialization.h; path = AFNetworking/AFURLResponseSerialization.h; sourceTree = ""; }; + F9141D36139969216C516C77961389BB /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist"; sourceTree = ""; }; + FA0AA55F314EC70BE6E6F37CEA16E7B3 /* Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig"; sourceTree = ""; }; + FEBC9031D02D5EF5B9A35F1C94395A7A /* AFHTTPSessionManager.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = AFHTTPSessionManager.h; path = AFNetworking/AFHTTPSessionManager.h; sourceTree = ""; }; + FECE67E1FF1C222A4D5EDADFF9BDAF0F /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 17CBF30B5F9D88B2841609EE21624DDF /* Frameworks */ = { + 2E155AFE719352ABAD5E1EAB7B0F5784 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 7A6204F09A25143D89CC871BF538877D /* Frameworks */ = { + 3008A1451138C58A8B5587F56487E49B /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - 8170D86D056338A72444D741DB242CBC /* Frameworks */ = { + 5C02092046AD39E3BBBD36FD1B54BA63 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - B3A7B8716F946A969B3C87B511DFBB06 /* Frameworks */ = { + 8FE849E24CB13045605E5829EA222C7E /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - C750BCC5FA7C0105F40CD44E94A36BA7 /* Frameworks */ = { + 90EBC721A4200AD9C041D0236F71BCA0 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - D2ABD6FD334887DD00B0DF3AB54AB3E4 /* Frameworks */ = { + 9715932E5CEA69E0294A7DE93E24B269 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - E1E635BA6B525F7669EE39D1D75F88B8 /* Frameworks */ = { + DEDFAD8F7448F532E3212D13A054C2CF /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( @@ -252,296 +256,301 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 0F8D2E47FE03D3B91B51069F7C273AF4 /* Frameworks */ = { + 03DFA0C4D831D8E310604187E4C22C10 /* NSURLSession */ = { isa = PBXGroup; children = ( + 3BAC6FD9D6CCF7EBED5A2ADE91240C07 /* AFCompatibilityMacros.h */, + FEBC9031D02D5EF5B9A35F1C94395A7A /* AFHTTPSessionManager.h */, + B5272C8AAB9087D9182279EA9B89398E /* AFHTTPSessionManager.m */, + CB153431886BD9D6E23BEE48E4605523 /* AFURLSessionManager.h */, + C78F20DD353F82A9F2BE4372C3676A8E /* AFURLSessionManager.m */, ); - name = Frameworks; + name = NSURLSession; sourceTree = ""; }; - 190D59C57DED819DD203147D959921A8 /* Targets Support Files */ = { + 049701DB2B0C74AB34AA60267CC47DBB /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests */ = { isa = PBXGroup; children = ( - B637022DA2CF1998C39889882CF50F0D /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests */, - 990AF325A5C324B018C486BD357D4B27 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests */, - B1B370E089BE8D4D0D2A56AEB884B6A7 /* Pods-TestingPods-OHHTTPStubs Mac Tests */, - 444EA8F1F6807A713399FC7D2A923CC2 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests */, + F187AB52818B87B4E698184FA9EF2D50 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown */, + F9141D36139969216C516C77961389BB /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist */, + B066DCC232A3412058AF0FE68AC87555 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m */, + EE7CC8468FF010D971A0BAFF20374AEA /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig */, + D59EE0D3224BB235CD5822D94DE0FE22 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig */, ); - name = "Targets Support Files"; + name = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests"; + path = "Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests"; sourceTree = ""; }; - 2E9AD032BEF6F7FF3B3CE4BC2394E430 /* AFNetworking */ = { + 05C4B20664E723B140BB790A983D3BD4 /* AFNetworking */ = { isa = PBXGroup; children = ( - A39FEEABC1551F49F0B0FE21D2AD9D6C /* AFNetworking.h */, - 7C7B2E05BDA98C95A960867F196C3CEF /* NSURLSession */, - B7F3D444F4024BB920EEF9C30D0D5287 /* Reachability */, - 817AFBB9248C30D5E13CA3E7A6471316 /* Security */, - BC1A26AFC715C6CA26CB8777253D3FD7 /* Serialization */, - AF493CBE5C8523B8C3AEDC2A6E478E3D /* Support Files */, - 97810C007420D0BAA15125FF4BC689F5 /* UIKit */, - ); + 4267D0DD6CC909CA1365961F32277469 /* AFNetworking.h */, + 03DFA0C4D831D8E310604187E4C22C10 /* NSURLSession */, + 996D1EE4E6720CE35796DD6811AAC592 /* Reachability */, + 92EB0176EE3C2ECDEF32FFF508CFCE07 /* Security */, + 38F17C882A457198E638B01229318AF1 /* Serialization */, + 4A407C3EDA6510EAC719F4029E8C0B6F /* Support Files */, + 3BF5663AEBED11E4FEDFE6358845FAE6 /* UIKit */, + ); + name = AFNetworking; path = AFNetworking; sourceTree = ""; }; - 444EA8F1F6807A713399FC7D2A923CC2 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests */ = { + 38F17C882A457198E638B01229318AF1 /* Serialization */ = { isa = PBXGroup; children = ( - 493EC68E4539B78F01F0D9C3B778DD99 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown */, - 67E13C37EDB0E2B2CCA2C622D66E8385 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist */, - 7CB1CB5970F98C80FF4808D6C6E1BF57 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m */, - A7FFBE99241E2C30FB09E85564DA1D88 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig */, - 225EA8457A11BA3434034790BCDC374E /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig */, + C98349A3949D96E28B704577C3FBD93D /* AFURLRequestSerialization.h */, + AB5935B63E6BC04EBDB2488B75ED9B66 /* AFURLRequestSerialization.m */, + F65B02365A0009B6013A68884E35BCDB /* AFURLResponseSerialization.h */, + 4E9677228E111EE5F13FC0C3E4A5E56B /* AFURLResponseSerialization.m */, ); - name = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests"; - path = "Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests"; + name = Serialization; sourceTree = ""; }; - 641BDD347DE7B8BB81D6CA5727C6EC5A /* Pods */ = { + 3BF5663AEBED11E4FEDFE6358845FAE6 /* UIKit */ = { isa = PBXGroup; children = ( - 2E9AD032BEF6F7FF3B3CE4BC2394E430 /* AFNetworking */, + D26C2DA79AF6EE48FC34AB0007FAB254 /* AFAutoPurgingImageCache.h */, + 7F72626D15557021AB272693F2BC1642 /* AFAutoPurgingImageCache.m */, + EFC81F7AAE5D74995DEF8DB5B42ED1F7 /* AFImageDownloader.h */, + ADFFBE2A9A866EEE72C875B5FDDBC239 /* AFImageDownloader.m */, + A348B42049E227F96C3F232D3C2B976D /* AFNetworkActivityIndicatorManager.h */, + 23D1BEF5C3C34B8168135C9B3BD49DEE /* AFNetworkActivityIndicatorManager.m */, + 0EE6827796778C8CE02B24816B2B31D2 /* UIActivityIndicatorView+AFNetworking.h */, + 686B4D8363BDFC57FAD7B4E5F4D2315E /* UIActivityIndicatorView+AFNetworking.m */, + 18411708A2168BD4D05CC325E63B4520 /* UIButton+AFNetworking.h */, + BBE6A9BD4C8D02893C2A69A0C486248B /* UIButton+AFNetworking.m */, + A30EB9730E5ADCF34AD2FE27A7A4BDF9 /* UIImageView+AFNetworking.h */, + A405B1A2FC41BBFB450CB89D0541B50A /* UIImageView+AFNetworking.m */, + CDFB660B91A8388F6389816F3EDC9BB2 /* UIKit+AFNetworking.h */, + 50DE554E80EA5B937DBD4745AF2FE78B /* UIProgressView+AFNetworking.h */, + 1F9D75AA168BE353752BB0A85015B7C3 /* UIProgressView+AFNetworking.m */, + 579F9AC7B26F3A0693CDE92E9C993408 /* UIRefreshControl+AFNetworking.h */, + 9F64A7FB4F12171BD021EA126B8C02A2 /* UIRefreshControl+AFNetworking.m */, + 314ED44F96F23777209F3B5B201EC28F /* WKWebView+AFNetworking.h */, + 83C2F143281A61B433F6DE7780B2258C /* WKWebView+AFNetworking.m */, ); - name = Pods; + name = UIKit; sourceTree = ""; }; - 7C7B2E05BDA98C95A960867F196C3CEF /* NSURLSession */ = { + 4A407C3EDA6510EAC719F4029E8C0B6F /* Support Files */ = { isa = PBXGroup; children = ( - 1D2CA139ADDD2E9918936FDF6B7650C6 /* AFHTTPSessionManager.h */, - B7251B546B1E78F8558F39EABEA675B7 /* AFHTTPSessionManager.m */, - 4622E5A19C9D5A8DDBED0433C745C5C9 /* AFURLSessionManager.h */, - AB97A15AA490770939273DBC0069730A /* AFURLSessionManager.m */, + 45B30A25FB4AAEF8F7796C959CA47E38 /* AFNetworking-c94d3492-dummy.m */, + B63032D78150E4A6B2887540A6F0CE17 /* AFNetworking-c94d3492-prefix.pch */, + F04B91FA80C99AE730CFBF2BF9F4B41B /* AFNetworking-c94d3492.debug.xcconfig */, + E3A58B82C1E4462CDC21E387C3A1588D /* AFNetworking-c94d3492.release.xcconfig */, + 53ACAFE96B29B5D97D62E73B6C2DB73C /* AFNetworking-iOS-dummy.m */, + 89C637F4C03075785FD843D8A1DB0D3A /* AFNetworking-iOS-prefix.pch */, + 4B49ECEF4F1253A2AEA4ADAEF1A61E19 /* AFNetworking-iOS.debug.xcconfig */, + E5787EE7E5B0B0BE7C0AABB594BC583B /* AFNetworking-iOS.release.xcconfig */, + 5B587388BA9FF7589045158CC6202D84 /* AFNetworking-tvOS-dummy.m */, + 919D4F7935D71D4A35C72DEF614D9BFA /* AFNetworking-tvOS-prefix.pch */, + 6A78FDA791B6D439081E2928E8EBAF70 /* AFNetworking-tvOS.debug.xcconfig */, + 5FA19907CC61635AE61E7208B2D1CCBA /* AFNetworking-tvOS.release.xcconfig */, ); - name = NSURLSession; + name = "Support Files"; + path = "../Target Support Files/AFNetworking-c94d3492"; sourceTree = ""; }; - 7DB346D0F39D3F0E887471402A8071AB = { + 6A62E21C8D4582B2883318720884F19E /* Products */ = { isa = PBXGroup; children = ( - B36AB396275697EEE1A5B13BA8A38FE3 /* Podfile */, - 0F8D2E47FE03D3B91B51069F7C273AF4 /* Frameworks */, - 641BDD347DE7B8BB81D6CA5727C6EC5A /* Pods */, - E4F6EBFC997C5CDB484BAFF85AEAF253 /* Products */, - 190D59C57DED819DD203147D959921A8 /* Targets Support Files */, + 89DC3CF5D938A26C8A3AE40A2ACD81F1 /* libAFNetworking-c94d3492.a */, + 7EE4ABD135AE98DA67A1F9A79ED437B2 /* libAFNetworking-iOS.a */, + A9B678DDD0FFE239F8CC1C40A3F77EE9 /* libAFNetworking-tvOS.a */, + AD331865889A80C610D0BA4C120B7A91 /* libPods-TestingPods-OHHTTPStubs iOS Fmk Tests.a */, + D83ECF7DF41CCE8D1CDF31AE8128434A /* libPods-TestingPods-OHHTTPStubs iOS Lib Tests.a */, + 0C72D958C479A08FDDA2E4F02B2DFC65 /* libPods-TestingPods-OHHTTPStubs Mac Tests.a */, + 7492AEBFE9AD87377CF105E4909A01CD /* libPods-TestingPods-OHHTTPStubs tvOS Fmk Tests.a */, ); + name = Products; sourceTree = ""; }; - 817AFBB9248C30D5E13CA3E7A6471316 /* Security */ = { + 92DA1C82557983B00B3FB5904F2D6FE1 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests */ = { isa = PBXGroup; children = ( - A4EA2BE1C35EB50F0B89D8423EB6F7B7 /* AFSecurityPolicy.h */, - 8F0339F512FBBF8E15BCFDFAC7119ACD /* AFSecurityPolicy.m */, + FECE67E1FF1C222A4D5EDADFF9BDAF0F /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown */, + 90FAC89A155852ABAE19F259D34099F7 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist */, + 65BA199597487B0AADE858C984524C41 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m */, + C5C9DA79D891FF65A391C1BE592E65D6 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig */, + DB8247269F859CCF6E338FD603326859 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig */, ); - name = Security; + name = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests"; + path = "Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests"; sourceTree = ""; }; - 97810C007420D0BAA15125FF4BC689F5 /* UIKit */ = { + 92EB0176EE3C2ECDEF32FFF508CFCE07 /* Security */ = { isa = PBXGroup; children = ( - CF9CF6605A13B92B6E686264E06C3CF6 /* AFAutoPurgingImageCache.h */, - A25308E5B3B2A8F72FAA398BA1C009A6 /* AFAutoPurgingImageCache.m */, - 490EC63B38541DE3F08700C6B42BA8A1 /* AFImageDownloader.h */, - D1ACB67B32DAEB8AD59AA058818CBD97 /* AFImageDownloader.m */, - 8E520EE78F252B3D97595A45BD13A540 /* AFNetworkActivityIndicatorManager.h */, - 523760D236AEACFBD199B6042A6D92D4 /* AFNetworkActivityIndicatorManager.m */, - EDCEAD97A5F72670715036A6AB785B92 /* UIActivityIndicatorView+AFNetworking.h */, - 419A7B2C9EBA571FBEBE2914F2246A01 /* UIActivityIndicatorView+AFNetworking.m */, - F2BCCE7C59CC730D5599FD2277D210CE /* UIButton+AFNetworking.h */, - 5AA57189482E366F3DDEB76A906DAC8B /* UIButton+AFNetworking.m */, - 7118A16B4CE6C2F5425CDEEE77040A9A /* UIImage+AFNetworking.h */, - 067029DEE90E57DFFB5748B732462B45 /* UIImageView+AFNetworking.h */, - 7691028C093F81E5766AD53ED2F6E0B8 /* UIImageView+AFNetworking.m */, - D8FA05DE98BEC9B0C224676B3C39B74A /* UIKit+AFNetworking.h */, - B9DEFEF6F25E74F9117C91B173D22A96 /* UIProgressView+AFNetworking.h */, - 067E6D26AAF8113D673714F5797BE715 /* UIProgressView+AFNetworking.m */, - 0121AF19B4DEE0ED795452A716E6D45F /* UIRefreshControl+AFNetworking.h */, - 3D3DAE5E44B0768704E76DA7829CEA05 /* UIRefreshControl+AFNetworking.m */, - D7E209D170F390B80C67336D1D58526E /* UIWebView+AFNetworking.h */, - 82F53B7CEF2CEEC442FCE43999EC54ED /* UIWebView+AFNetworking.m */, + 4AE59FB0F479D67CC9DB1FA33A13FEB0 /* AFSecurityPolicy.h */, + F59E9232A74984C9E59E8FC210FCD380 /* AFSecurityPolicy.m */, ); - name = UIKit; + name = Security; sourceTree = ""; }; - 990AF325A5C324B018C486BD357D4B27 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests */ = { + 996D1EE4E6720CE35796DD6811AAC592 /* Reachability */ = { isa = PBXGroup; children = ( - 86C0DCC2C56D6DBE078F6EB0D0F5ADA8 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown */, - 98FF5E774D2798BE804928E49ABF28ED /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist */, - B13F476E703C08E81870243C9FFE7752 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m */, - 45A396A85D76FDCBD6D52CF077E055B3 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig */, - 5154A04BF6B939CC5C91B26BC3B235C6 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig */, + 327ADD0333649802839E2A2C000ED53E /* AFNetworkReachabilityManager.h */, + 2CCD01B8926DD3CC2BC1C5E3801E89C1 /* AFNetworkReachabilityManager.m */, ); - name = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests"; - path = "Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests"; + name = Reachability; sourceTree = ""; }; - AF493CBE5C8523B8C3AEDC2A6E478E3D /* Support Files */ = { + 9996A57A097D7CC2270C6BC8ADE039D9 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests */ = { isa = PBXGroup; children = ( - 6FBA92CB9D96563B602A87AAFCFCAD7C /* AFNetworking-c94d3492.xcconfig */, - 284C26DCEC89225FE257E8AF6557BAED /* AFNetworking-c94d3492-dummy.m */, - 050C64A16F4965CDA1CDB676C9163041 /* AFNetworking-c94d3492-prefix.pch */, - D2B487F97B81E3910E1CA2A32AB6FF96 /* AFNetworking-iOS.xcconfig */, - 84C2852D436E477D989044D9F70FD4CF /* AFNetworking-iOS-dummy.m */, - 9C0FDF8B2D2F3C5D0A765353B2CBCD33 /* AFNetworking-iOS-prefix.pch */, - 5700278C2E8921B744D90A32E4B2E33E /* AFNetworking-tvOS.xcconfig */, - ED29F21403BDB1E5DD379E272051A69E /* AFNetworking-tvOS-dummy.m */, - A1133EF1E8EBE4F5AEB6EEFEE986A103 /* AFNetworking-tvOS-prefix.pch */, + 48F272CE28D4F19EE5842BFB5988F621 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown */, + 8EABF80FC26E102BB987C5104679F3E4 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist */, + 6B5720EE7DBDBCE67C3A31BE84D89ECC /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m */, + 3C3BA82DEE72E39C08D4650A93AA4A9A /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig */, + F58F9B920BF2F2D39DA726F7A00522FC /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig */, ); - name = "Support Files"; - path = "../Target Support Files/AFNetworking-c94d3492"; + name = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests"; + path = "Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests"; sourceTree = ""; }; - B1B370E089BE8D4D0D2A56AEB884B6A7 /* Pods-TestingPods-OHHTTPStubs Mac Tests */ = { + A046926F87B521F31A16F128C22713B4 /* Targets Support Files */ = { isa = PBXGroup; children = ( - E87B284887D29B72E6EA5F7E15004BD3 /* Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown */, - 57B933FBD9EB44273FE9CF231ED93FE5 /* Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist */, - 2802EA0AF2A76C463F3C503A0FE4B8A1 /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m */, - 64D97EE63038FA87063A3BE46DA25121 /* Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig */, - F75CD6E2E41BE668BB8D768FD76FB0EC /* Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig */, + 049701DB2B0C74AB34AA60267CC47DBB /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests */, + 92DA1C82557983B00B3FB5904F2D6FE1 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests */, + B45D86460C9F83178C9418901DF1596B /* Pods-TestingPods-OHHTTPStubs Mac Tests */, + 9996A57A097D7CC2270C6BC8ADE039D9 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests */, ); - name = "Pods-TestingPods-OHHTTPStubs Mac Tests"; - path = "Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests"; + name = "Targets Support Files"; sourceTree = ""; }; - B637022DA2CF1998C39889882CF50F0D /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests */ = { + B45D86460C9F83178C9418901DF1596B /* Pods-TestingPods-OHHTTPStubs Mac Tests */ = { isa = PBXGroup; children = ( - 98F9A5A8A5CBAEFBC64CC66328EC4E99 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown */, - 6A41CBBC25FDD16D2765EEC7598B9DEB /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist */, - DFA732EC710C331C88DDC0E923D582A5 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m */, - 224B56DD647BF513E9D8F34F6A809DF6 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig */, - 375ECC43A9266AB5C20E91070910BE33 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig */, + 7A664291C089DFD2069DF80FE26515CE /* Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown */, + D7332B32E284DBA4723958A57A03EED3 /* Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist */, + 2985EB7A156AB244ED557FD24402B01A /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m */, + C65226CA0FE3C199A375875670567884 /* Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig */, + FA0AA55F314EC70BE6E6F37CEA16E7B3 /* Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig */, ); - name = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests"; - path = "Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests"; + name = "Pods-TestingPods-OHHTTPStubs Mac Tests"; + path = "Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests"; sourceTree = ""; }; - B7F3D444F4024BB920EEF9C30D0D5287 /* Reachability */ = { + B580EA7CF70EB35BD42257A17D958932 /* Pods */ = { isa = PBXGroup; children = ( - 5AC90BD8F86F957D3DC47D89B2BB040B /* AFNetworkReachabilityManager.h */, - 8CC1FF5E4D9879068E2CA6DD5C9FDAD1 /* AFNetworkReachabilityManager.m */, + 05C4B20664E723B140BB790A983D3BD4 /* AFNetworking */, ); - name = Reachability; + name = Pods; sourceTree = ""; }; - BC1A26AFC715C6CA26CB8777253D3FD7 /* Serialization */ = { + CF1408CF629C7361332E53B88F7BD30C = { isa = PBXGroup; children = ( - A3B7FFADD03754D2228E8993F0F0CF2A /* AFURLRequestSerialization.h */, - 82DF63A147D90320B4812AFB422015AA /* AFURLRequestSerialization.m */, - F3EC32E0205FA2F4314674D854DCC8B6 /* AFURLResponseSerialization.h */, - C0B108B686488E21A171DAA4D18AD881 /* AFURLResponseSerialization.m */, + 9D940727FF8FB9C785EB98E56350EF41 /* Podfile */, + D89477F20FB1DE18A04690586D7808C4 /* Frameworks */, + B580EA7CF70EB35BD42257A17D958932 /* Pods */, + 6A62E21C8D4582B2883318720884F19E /* Products */, + A046926F87B521F31A16F128C22713B4 /* Targets Support Files */, ); - name = Serialization; sourceTree = ""; }; - E4F6EBFC997C5CDB484BAFF85AEAF253 /* Products */ = { + D89477F20FB1DE18A04690586D7808C4 /* Frameworks */ = { isa = PBXGroup; children = ( - 0B4EA1A2506057DEBCB41E0A519B8F4B /* libAFNetworking-c94d3492.a */, - 795C1F36B6AA25F784C83826F0CD6062 /* libAFNetworking-iOS.a */, - F9376FC632354CA218B3C47EAB560527 /* libAFNetworking-tvOS.a */, - F048257A3F3D2308F1C9ADADAD0C0111 /* libPods-TestingPods-OHHTTPStubs iOS Fmk Tests.a */, - A9C1FF3C99BB9C97E4C549796C5A4098 /* libPods-TestingPods-OHHTTPStubs iOS Lib Tests.a */, - 07573BF6F4B141A9D9FE32643F3BCDA6 /* libPods-TestingPods-OHHTTPStubs Mac Tests.a */, - 927D82381B7AF1B27D8797DBA9F40E1A /* libPods-TestingPods-OHHTTPStubs tvOS Fmk Tests.a */, ); - name = Products; + name = Frameworks; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - 3A5F15F5F11158DB2F59024DD2D933DC /* Headers */ = { + 5C8E8138DA3EE9569F0CBCB274054137 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - FDB93829F88A10DD4F52FA5D174DD216 /* AFAutoPurgingImageCache.h in Headers */, - B382A7EE4B5A34A04BF7EF1E77096F46 /* AFHTTPSessionManager.h in Headers */, - 8AE476DAE4A8371DB6457ED40A842DFA /* AFImageDownloader.h in Headers */, - DB57CCE4CF63C252CE14C817DE15AACD /* AFNetworkActivityIndicatorManager.h in Headers */, - 3961DC887BC7E7D2862D38BE20072553 /* AFNetworking.h in Headers */, - 32F75AFB06C5BB3D64C7E504D5DABC07 /* AFNetworkReachabilityManager.h in Headers */, - C3DEC73556C1E9825D3EEEC4EF3222D0 /* AFSecurityPolicy.h in Headers */, - 8B0682AA90BB73680ED459DE5D093CF6 /* AFURLRequestSerialization.h in Headers */, - 55026A7B694A5F2FA53A2A75C97DF673 /* AFURLResponseSerialization.h in Headers */, - EADE64D3244517944416C363DA822B18 /* AFURLSessionManager.h in Headers */, - 9208B4637E11A54EB5544487CA571CB3 /* UIActivityIndicatorView+AFNetworking.h in Headers */, - 507F784759A259B26712FA7588DAB168 /* UIButton+AFNetworking.h in Headers */, - 03826B8703E219C11E4C2DAB9A634325 /* UIImage+AFNetworking.h in Headers */, - 36994F1813AD8E417C23A6544D30A357 /* UIImageView+AFNetworking.h in Headers */, - 384FC592DDCAAB5C04CB8A1B3FE2D22E /* UIKit+AFNetworking.h in Headers */, - A05A453F76B4CB397C463F65ADC5A597 /* UIProgressView+AFNetworking.h in Headers */, - D7C129AE47D408B85B5AC1AFEEB29A9A /* UIRefreshControl+AFNetworking.h in Headers */, - 0A5C58997AAC65BF6B09039F0DF6F9FC /* UIWebView+AFNetworking.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 4F71E7BD2882DD0B6B8BFFCEA9EA718F /* Headers */ = { + 66E537F7E0BB322534AF5053C7398DE9 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - AFBE38BD371CDEC001DDD749A136F5E9 /* AFHTTPSessionManager.h in Headers */, - 32EC063C076486D1E539337E3590A00D /* AFNetworking.h in Headers */, - 56D369D51173A5314079D3D8C9EE569B /* AFNetworkReachabilityManager.h in Headers */, - 5420902A4AB0BD57FF81A99B147C7C99 /* AFSecurityPolicy.h in Headers */, - 979BD766D2CB1552B4C87C5D24C5E483 /* AFURLRequestSerialization.h in Headers */, - 73AB5781DC7940FB178273DEFBCB0033 /* AFURLResponseSerialization.h in Headers */, - CA05A3A9B350442758AA8113DC21C005 /* AFURLSessionManager.h in Headers */, + D7A2AA536432365408FBAB4E8145AC97 /* AFCompatibilityMacros.h in Headers */, + D01EE7D2FE30AFF0DC55E649702CD37B /* AFHTTPSessionManager.h in Headers */, + D719273C32F2321623652F7871D579F6 /* AFNetworking.h in Headers */, + 525D8AC53942E18812D833E891BA5FAA /* AFNetworkReachabilityManager.h in Headers */, + 14E5180DDFD5CDE1E8A6CFC6CFA06705 /* AFSecurityPolicy.h in Headers */, + 83BC78F53978D9C734A3632381E6E7B9 /* AFURLRequestSerialization.h in Headers */, + 6460FB16F2BB8A75E4FED97DF1DB366C /* AFURLResponseSerialization.h in Headers */, + 4988642C2A81E175E24D209805E18E1E /* AFURLSessionManager.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - 8337B73BFC2E8D923592B00B48D181CA /* Headers */ = { + 71AD88D5CFB7BDBF535B31C33087EFF8 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - AC5F42B1DBE9B50DCF746FBCD8809709 /* Headers */ = { + 90459C14030567049DDF1FAAAC767933 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( ); runOnlyForDeploymentPostprocessing = 0; }; - C248C2E3CD3CB4ACBDFB44274A5DB4AF /* Headers */ = { + C6F7494237471C218B841EBA5BC28417 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - 44194FA22CBDE3FB910E7B67D70E2000 /* AFAutoPurgingImageCache.h in Headers */, - EB6CED28E29434212736C804F1F63677 /* AFHTTPSessionManager.h in Headers */, - 9344A6A89825F6253753BD008FF0548A /* AFImageDownloader.h in Headers */, - 7E22C3FBCD4BC396FF1C43FBF301C6D8 /* AFNetworkActivityIndicatorManager.h in Headers */, - 2566BAE1CFDA5654F2FDA6BDFF2D80DB /* AFNetworking.h in Headers */, - D2291731C1F2969AC93B01DD98613A66 /* AFNetworkReachabilityManager.h in Headers */, - FFB6618C19D61DBE626F365FD27153E9 /* AFSecurityPolicy.h in Headers */, - 1097BF248FADB4F17D799B52916E6FDB /* AFURLRequestSerialization.h in Headers */, - DBED2A43013D393E98DB8B2A97045DC4 /* AFURLResponseSerialization.h in Headers */, - FEC5848363B04369FA95F167C751C820 /* AFURLSessionManager.h in Headers */, - 6A4F2D9505BF8DF249C7AFB1D479944F /* UIActivityIndicatorView+AFNetworking.h in Headers */, - 7F514C121F982BAC1BDA0F422BC5B971 /* UIButton+AFNetworking.h in Headers */, - DC1BD3654EAAD82B3E9F44B808026E81 /* UIImage+AFNetworking.h in Headers */, - 522E8E8D06D2046D0CD0DB65C09DDD26 /* UIImageView+AFNetworking.h in Headers */, - E6AB215237138C2A62B8D6DEA6524BBF /* UIKit+AFNetworking.h in Headers */, - 5CEC3FD0B4DBBA6995C6477672C096FB /* UIProgressView+AFNetworking.h in Headers */, - FC53F62EFC6A879D99DE2F22CE3388CD /* UIRefreshControl+AFNetworking.h in Headers */, - 116B684420898BB169C74737B17C20A2 /* UIWebView+AFNetworking.h in Headers */, + A8A90B1A2BDD9CFABF01A87C29614CC6 /* AFAutoPurgingImageCache.h in Headers */, + 87CD3F1257890D64785EDEC31854AF92 /* AFCompatibilityMacros.h in Headers */, + BA5EA55AF0F0C7369A8A9F8E2982B7A3 /* AFHTTPSessionManager.h in Headers */, + 6828FECA7F26C5857A9F9B1DFC829975 /* AFImageDownloader.h in Headers */, + 0F0193CF702B890AE2BC6AF8DB727BD7 /* AFNetworkActivityIndicatorManager.h in Headers */, + EBEDEB3C2DCBB788A782184B1C8EC781 /* AFNetworking.h in Headers */, + B2ACC2617F38911BDDD477CE23D33875 /* AFNetworkReachabilityManager.h in Headers */, + B75C457242A4E5E41F7BFB6EB36A2A1B /* AFSecurityPolicy.h in Headers */, + 3784CEAA87C0A28517369424F670C5C9 /* AFURLRequestSerialization.h in Headers */, + 407CA6814B4BB8CF244BCD44F12C2B1E /* AFURLResponseSerialization.h in Headers */, + BC29817C5A073F75FA46F323AC36DAFD /* AFURLSessionManager.h in Headers */, + 8D8B8577D0DDED56FFC4D64DBBB5411B /* UIActivityIndicatorView+AFNetworking.h in Headers */, + 775F1C513B1C0292C50B78DBB304C280 /* UIButton+AFNetworking.h in Headers */, + CD9F1F8C86C0B8BCDE4B1A4FEABCBB97 /* UIImageView+AFNetworking.h in Headers */, + 973B48F62B7685FA97FD8B035A85D22D /* UIKit+AFNetworking.h in Headers */, + F7C59A04713B738E1B7356BF53E0C06F /* UIProgressView+AFNetworking.h in Headers */, + 4FA785073D59201473891C595459878C /* UIRefreshControl+AFNetworking.h in Headers */, + 3FD7BDAC8D5D028A3AA01259C5C4F50B /* WKWebView+AFNetworking.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - C369321C5C7F833BE593224ED6F2FB99 /* Headers */ = { + D4A595B35A27780F7AB0D8D86B2EACCC /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( + 37CF89A4B6B4B38FBDCB721BE3F4BB23 /* AFAutoPurgingImageCache.h in Headers */, + 9D813A28BFBDD28C967504C5243E2D06 /* AFCompatibilityMacros.h in Headers */, + F7F76726F3F02DBF1A56C0068C2088D5 /* AFHTTPSessionManager.h in Headers */, + 22B68378EB280677C4F9170B68595482 /* AFImageDownloader.h in Headers */, + 08FDBAD9E6DB1A8B6F5AC75E5BE984F7 /* AFNetworkActivityIndicatorManager.h in Headers */, + 6C9BBF821F2A026527E4AF05B2CD0A2B /* AFNetworking.h in Headers */, + 310790DB888F028D18C8AC6CB2E634DF /* AFNetworkReachabilityManager.h in Headers */, + 4ADD926D3E83441511A24DC32C6AD8B9 /* AFSecurityPolicy.h in Headers */, + 0B236E7CD846E4DE6847DD10C27AA11C /* AFURLRequestSerialization.h in Headers */, + F66B19ADD76B8AB618C5434A2AB799BE /* AFURLResponseSerialization.h in Headers */, + CD8B098C554044EDB4DC22C091CB29E5 /* AFURLSessionManager.h in Headers */, + 510BAE388559AAFAF09621AF6DBD4AC7 /* UIActivityIndicatorView+AFNetworking.h in Headers */, + EE26078D0381139C44C39A7B9B17FF0C /* UIButton+AFNetworking.h in Headers */, + 2197779B70AE5A6A5FF51F60A82249B2 /* UIImageView+AFNetworking.h in Headers */, + F5786700EFC0469EA182A203BFC8C084 /* UIKit+AFNetworking.h in Headers */, + ABCD3B440CC85CCF5F5A022F8932CA55 /* UIProgressView+AFNetworking.h in Headers */, + 9F5A4CEA3C0012972DE9D1D8CF23FBD2 /* UIRefreshControl+AFNetworking.h in Headers */, + 4DC9BFFFE39173261B27CBACE7F7A579 /* WKWebView+AFNetworking.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; - D75A5F8B5A5D32140A4BDECD2CE080ED /* Headers */ = { + EC11E80333D36AD94FADD881B840D3B1 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( @@ -551,139 +560,139 @@ /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 0A36AD1317D0B4A3A94BFB9ED1E640D2 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests */ = { + 867F7D899B729E0D6B3894EA6BD8FF2E /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests */ = { isa = PBXNativeTarget; - buildConfigurationList = 61315F1E7D712E5C10A013F7CA3738F2 /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs iOS Lib Tests" */; + buildConfigurationList = CB5260C30042B45B03FF7ED24B81E01C /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests" */; buildPhases = ( - D75A5F8B5A5D32140A4BDECD2CE080ED /* Headers */, - E873E989E9F6557504C3691DBA37CCBF /* Sources */, - 17CBF30B5F9D88B2841609EE21624DDF /* Frameworks */, + EC11E80333D36AD94FADD881B840D3B1 /* Headers */, + B90EA18A630C9BF68C88F42E0A34D10D /* Sources */, + 2E155AFE719352ABAD5E1EAB7B0F5784 /* Frameworks */, ); buildRules = ( ); dependencies = ( - 793B2CDC9B24F3CA7A1DC4BB6C234AFC /* PBXTargetDependency */, + 436726D9C29276D2AD58A2C23FE9F194 /* PBXTargetDependency */, ); - name = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests"; - productName = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests"; - productReference = A9C1FF3C99BB9C97E4C549796C5A4098 /* libPods-TestingPods-OHHTTPStubs iOS Lib Tests.a */; + name = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests"; + productName = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests"; + productReference = AD331865889A80C610D0BA4C120B7A91 /* libPods-TestingPods-OHHTTPStubs iOS Fmk Tests.a */; productType = "com.apple.product-type.library.static"; }; - 163E987AE2E029D9EB0B15C75EDE7869 /* AFNetworking-c94d3492 */ = { + A40CE905A4774C859184BC4AA3767B1D /* AFNetworking-iOS */ = { isa = PBXNativeTarget; - buildConfigurationList = D5C19D094090B561DE0D6763C010330B /* Build configuration list for PBXNativeTarget "AFNetworking-c94d3492" */; + buildConfigurationList = C1D762A4B43B5F748FC4E4BF530D4C8D /* Build configuration list for PBXNativeTarget "AFNetworking-iOS" */; buildPhases = ( - 4F71E7BD2882DD0B6B8BFFCEA9EA718F /* Headers */, - 49D08AC53ED5353308334DE7E4DE0C32 /* Sources */, - E1E635BA6B525F7669EE39D1D75F88B8 /* Frameworks */, + D4A595B35A27780F7AB0D8D86B2EACCC /* Headers */, + 567622C0F13970FF00851E17702ABEEE /* Sources */, + 8FE849E24CB13045605E5829EA222C7E /* Frameworks */, ); buildRules = ( ); dependencies = ( ); - name = "AFNetworking-c94d3492"; - productName = "AFNetworking-c94d3492"; - productReference = 0B4EA1A2506057DEBCB41E0A519B8F4B /* libAFNetworking-c94d3492.a */; + name = "AFNetworking-iOS"; + productName = "AFNetworking-iOS"; + productReference = 7EE4ABD135AE98DA67A1F9A79ED437B2 /* libAFNetworking-iOS.a */; productType = "com.apple.product-type.library.static"; }; - 294529C77198ECB248E415B29FDC9441 /* AFNetworking-iOS */ = { + CD3429440BE994AAC5008C4551ED25FE /* Pods-TestingPods-OHHTTPStubs Mac Tests */ = { isa = PBXNativeTarget; - buildConfigurationList = E255DDD270476C203438B6706952D083 /* Build configuration list for PBXNativeTarget "AFNetworking-iOS" */; + buildConfigurationList = 150851E270DCBB5B39F1D9DCB9F6E0AA /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs Mac Tests" */; buildPhases = ( - 3A5F15F5F11158DB2F59024DD2D933DC /* Headers */, - D5696087864FB9982848D799CAB72950 /* Sources */, - 8170D86D056338A72444D741DB242CBC /* Frameworks */, + 5C8E8138DA3EE9569F0CBCB274054137 /* Headers */, + 770D6AD49F18F61248B327EFFAEE7889 /* Sources */, + 3008A1451138C58A8B5587F56487E49B /* Frameworks */, ); buildRules = ( ); dependencies = ( + E18E643A9B624AAE36DEE7E4AAE0F70B /* PBXTargetDependency */, ); - name = "AFNetworking-iOS"; - productName = "AFNetworking-iOS"; - productReference = 795C1F36B6AA25F784C83826F0CD6062 /* libAFNetworking-iOS.a */; + name = "Pods-TestingPods-OHHTTPStubs Mac Tests"; + productName = "Pods-TestingPods-OHHTTPStubs Mac Tests"; + productReference = 0C72D958C479A08FDDA2E4F02B2DFC65 /* libPods-TestingPods-OHHTTPStubs Mac Tests.a */; productType = "com.apple.product-type.library.static"; }; - 5F08154FE575078358A2BD13C331046B /* Pods-TestingPods-OHHTTPStubs Mac Tests */ = { + DA88B26FFB2107D8AB235DC0EA18CFA3 /* AFNetworking-tvOS */ = { isa = PBXNativeTarget; - buildConfigurationList = 6E102AEADA192885A73F950AFC0FCC79 /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs Mac Tests" */; + buildConfigurationList = 663A80F994264D06A21947A8993F54FB /* Build configuration list for PBXNativeTarget "AFNetworking-tvOS" */; buildPhases = ( - C369321C5C7F833BE593224ED6F2FB99 /* Headers */, - 80AFF6D26BEB01E3C5A35437A574FF4F /* Sources */, - B3A7B8716F946A969B3C87B511DFBB06 /* Frameworks */, + C6F7494237471C218B841EBA5BC28417 /* Headers */, + C635532E7C156128BB55A5AE440DA869 /* Sources */, + 5C02092046AD39E3BBBD36FD1B54BA63 /* Frameworks */, ); buildRules = ( ); dependencies = ( - 67EA370C59DC523A241BC72B78563533 /* PBXTargetDependency */, ); - name = "Pods-TestingPods-OHHTTPStubs Mac Tests"; - productName = "Pods-TestingPods-OHHTTPStubs Mac Tests"; - productReference = 07573BF6F4B141A9D9FE32643F3BCDA6 /* libPods-TestingPods-OHHTTPStubs Mac Tests.a */; + name = "AFNetworking-tvOS"; + productName = "AFNetworking-tvOS"; + productReference = A9B678DDD0FFE239F8CC1C40A3F77EE9 /* libAFNetworking-tvOS.a */; productType = "com.apple.product-type.library.static"; }; - B93B7613DEC5DD7B2A5FAB1A9071B504 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests */ = { + E8D7B0AF5976ACD3CF5C49E400D39B8F /* AFNetworking-c94d3492 */ = { isa = PBXNativeTarget; - buildConfigurationList = 3BDF0FBD49C6F8B40C551849FAA61459 /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests" */; + buildConfigurationList = 1AB3CEE8A6AF144EE1DE63777B5D3F37 /* Build configuration list for PBXNativeTarget "AFNetworking-c94d3492" */; buildPhases = ( - AC5F42B1DBE9B50DCF746FBCD8809709 /* Headers */, - 5F1AEC4BEF86EB08837C8CEEB206DA60 /* Sources */, - D2ABD6FD334887DD00B0DF3AB54AB3E4 /* Frameworks */, + 66E537F7E0BB322534AF5053C7398DE9 /* Headers */, + A5412CDC81E7FBA07357400E83F4A93B /* Sources */, + 9715932E5CEA69E0294A7DE93E24B269 /* Frameworks */, ); buildRules = ( ); dependencies = ( - AFB25B32E7ED42BEC067C5F909AEFE7F /* PBXTargetDependency */, ); - name = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests"; - productName = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests"; - productReference = 927D82381B7AF1B27D8797DBA9F40E1A /* libPods-TestingPods-OHHTTPStubs tvOS Fmk Tests.a */; + name = "AFNetworking-c94d3492"; + productName = "AFNetworking-c94d3492"; + productReference = 89DC3CF5D938A26C8A3AE40A2ACD81F1 /* libAFNetworking-c94d3492.a */; productType = "com.apple.product-type.library.static"; }; - D70B3FB3184A448A3E88112CBF71A2AA /* AFNetworking-tvOS */ = { + EDF71AB28C16941324C8680A930C708A /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests */ = { isa = PBXNativeTarget; - buildConfigurationList = A6B6FC863E8EA6582C55995B87A8E595 /* Build configuration list for PBXNativeTarget "AFNetworking-tvOS" */; + buildConfigurationList = 96D8E6841B1094CD5E6C056EF41B4719 /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs iOS Lib Tests" */; buildPhases = ( - C248C2E3CD3CB4ACBDFB44274A5DB4AF /* Headers */, - 15D87767F031BF1F471E711A1DE27D92 /* Sources */, - C750BCC5FA7C0105F40CD44E94A36BA7 /* Frameworks */, + 90459C14030567049DDF1FAAAC767933 /* Headers */, + 8E6A9F4ACBC3073D84865E859BE54B07 /* Sources */, + 90EBC721A4200AD9C041D0236F71BCA0 /* Frameworks */, ); buildRules = ( ); dependencies = ( + 5CAD717BE26EB4D10DA7BF34985BA9C6 /* PBXTargetDependency */, ); - name = "AFNetworking-tvOS"; - productName = "AFNetworking-tvOS"; - productReference = F9376FC632354CA218B3C47EAB560527 /* libAFNetworking-tvOS.a */; + name = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests"; + productName = "Pods-TestingPods-OHHTTPStubs iOS Lib Tests"; + productReference = D83ECF7DF41CCE8D1CDF31AE8128434A /* libPods-TestingPods-OHHTTPStubs iOS Lib Tests.a */; productType = "com.apple.product-type.library.static"; }; - E066DB79AA19C4175D8A0F28DD775447 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests */ = { + F9CE47D089A4BB5A415D0227916BA6C2 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests */ = { isa = PBXNativeTarget; - buildConfigurationList = 4D26715B140BC177322AF14551B3739B /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests" */; + buildConfigurationList = C5ACEBE7A0B01A73E837A61CE6E6C5EA /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests" */; buildPhases = ( - 8337B73BFC2E8D923592B00B48D181CA /* Headers */, - 9F013DFB01EC2C2A23E01368FB959DCE /* Sources */, - 7A6204F09A25143D89CC871BF538877D /* Frameworks */, + 71AD88D5CFB7BDBF535B31C33087EFF8 /* Headers */, + BBFEF1BCF6FA15FB378B0D2593E855FE /* Sources */, + DEDFAD8F7448F532E3212D13A054C2CF /* Frameworks */, ); buildRules = ( ); dependencies = ( - C9DA06B86A50A50FA261BE5EAC3A4735 /* PBXTargetDependency */, + 6A8C2589A44BEC700A62C6A7645E6A5B /* PBXTargetDependency */, ); - name = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests"; - productName = "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests"; - productReference = F048257A3F3D2308F1C9ADADAD0C0111 /* libPods-TestingPods-OHHTTPStubs iOS Fmk Tests.a */; + name = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests"; + productName = "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests"; + productReference = 7492AEBFE9AD87377CF105E4909A01CD /* libPods-TestingPods-OHHTTPStubs tvOS Fmk Tests.a */; productType = "com.apple.product-type.library.static"; }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ - D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { + BFDFE7DC352907FC980B868725387E98 /* Project object */ = { isa = PBXProject; attributes = { - LastSwiftUpdateCheck = 0930; - LastUpgradeCheck = 1020; + LastSwiftUpdateCheck = 1240; + LastUpgradeCheck = 1240; }; - buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; + buildConfigurationList = 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; developmentRegion = en; hasScannedForEncodings = 0; @@ -691,170 +700,167 @@ en, Base, ); - mainGroup = 7DB346D0F39D3F0E887471402A8071AB; - productRefGroup = E4F6EBFC997C5CDB484BAFF85AEAF253 /* Products */; + mainGroup = CF1408CF629C7361332E53B88F7BD30C; + productRefGroup = 6A62E21C8D4582B2883318720884F19E /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - 163E987AE2E029D9EB0B15C75EDE7869 /* AFNetworking-c94d3492 */, - 294529C77198ECB248E415B29FDC9441 /* AFNetworking-iOS */, - D70B3FB3184A448A3E88112CBF71A2AA /* AFNetworking-tvOS */, - E066DB79AA19C4175D8A0F28DD775447 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests */, - 0A36AD1317D0B4A3A94BFB9ED1E640D2 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests */, - 5F08154FE575078358A2BD13C331046B /* Pods-TestingPods-OHHTTPStubs Mac Tests */, - B93B7613DEC5DD7B2A5FAB1A9071B504 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests */, + E8D7B0AF5976ACD3CF5C49E400D39B8F /* AFNetworking-c94d3492 */, + A40CE905A4774C859184BC4AA3767B1D /* AFNetworking-iOS */, + DA88B26FFB2107D8AB235DC0EA18CFA3 /* AFNetworking-tvOS */, + 867F7D899B729E0D6B3894EA6BD8FF2E /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests */, + EDF71AB28C16941324C8680A930C708A /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests */, + CD3429440BE994AAC5008C4551ED25FE /* Pods-TestingPods-OHHTTPStubs Mac Tests */, + F9CE47D089A4BB5A415D0227916BA6C2 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests */, ); }; /* End PBXProject section */ /* Begin PBXSourcesBuildPhase section */ - 15D87767F031BF1F471E711A1DE27D92 /* Sources */ = { + 567622C0F13970FF00851E17702ABEEE /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - EAABE565D6D62D27D232B94F4F86CF2F /* AFAutoPurgingImageCache.m in Sources */, - 8C176A815B409BC36CE64A5807FA1075 /* AFHTTPSessionManager.m in Sources */, - 45DAC3ED54E9D38488DA4B62162F98AF /* AFImageDownloader.m in Sources */, - 49ECB3B7AB3028A11367187119BC8BB7 /* AFNetworkActivityIndicatorManager.m in Sources */, - 6C54A1A08A4CCCD443E90EB8D3DF768C /* AFNetworking-tvOS-dummy.m in Sources */, - 643C4AB032AB560491B42F8FB0297EC4 /* AFNetworkReachabilityManager.m in Sources */, - 61443F016D0C1732F73913538E4E7908 /* AFSecurityPolicy.m in Sources */, - 4221D8805C6A539DB6910646BEED3695 /* AFURLRequestSerialization.m in Sources */, - 419794E37141ECCF8D65524851BBF4B0 /* AFURLResponseSerialization.m in Sources */, - 5FC64ACBF1ED123C69507A9176E0F134 /* AFURLSessionManager.m in Sources */, - D9425DE952F0E042DA9C10785C6A9B7C /* UIActivityIndicatorView+AFNetworking.m in Sources */, - 5B9099D9A7BB21987AA44C6F88422575 /* UIButton+AFNetworking.m in Sources */, - EBA21C2504105E270C349BAF94C81CF6 /* UIImageView+AFNetworking.m in Sources */, - D8ACF9ED0002D52D205E1119E7DBD5D9 /* UIProgressView+AFNetworking.m in Sources */, - 1B310C2202C5838DE17FD736B4C99FF1 /* UIRefreshControl+AFNetworking.m in Sources */, - 557288FE943D212DA96D05AA9D9BBBC1 /* UIWebView+AFNetworking.m in Sources */, + 97D622BD8ECFA2FDBCA572DFFC7A4C19 /* AFAutoPurgingImageCache.m in Sources */, + 01E5D57BF87BE181EEA39DAA5155FF18 /* AFHTTPSessionManager.m in Sources */, + 8FF06860EB5A54A004FA6CCABEFA9500 /* AFImageDownloader.m in Sources */, + E8AEDB5261C52FDFBA79FD89F431C312 /* AFNetworkActivityIndicatorManager.m in Sources */, + 09678E9E21AEFA91262B5062DFB05E1D /* AFNetworking-iOS-dummy.m in Sources */, + 35785A1163D8D6359F1AC9B125B98A5B /* AFNetworkReachabilityManager.m in Sources */, + 8D4D449BD4F6F4B1D46724F7DBDE572B /* AFSecurityPolicy.m in Sources */, + 189EF09A1D56DF812404E252759570C5 /* AFURLRequestSerialization.m in Sources */, + CEEA4FB94BF5BA05324D6016EC101765 /* AFURLResponseSerialization.m in Sources */, + 6C8B32A88D508E9CA61B929CAFE87B01 /* AFURLSessionManager.m in Sources */, + 390F9231081DBC9E928F7DA242E9B21C /* UIActivityIndicatorView+AFNetworking.m in Sources */, + 31EAF2792C36DA212D4A8421BC71CA8D /* UIButton+AFNetworking.m in Sources */, + D2B8DC7906E1315EC757310B6F55B3AB /* UIImageView+AFNetworking.m in Sources */, + 764C08815786725BF583688078BF5485 /* UIProgressView+AFNetworking.m in Sources */, + 22F04EBD632AE3C024526A67D4BBBFA8 /* UIRefreshControl+AFNetworking.m in Sources */, + C4FB40F787EDB876633D3928EB629CD3 /* WKWebView+AFNetworking.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 49D08AC53ED5353308334DE7E4DE0C32 /* Sources */ = { + 770D6AD49F18F61248B327EFFAEE7889 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - A5BC0E662634EB2667EBB67F9AA855F7 /* AFHTTPSessionManager.m in Sources */, - 2F86B19B954FC0CBA21DB7BB3075B977 /* AFNetworking-c94d3492-dummy.m in Sources */, - F1EB67B1A9C1A9458E65D2BBA3CF356E /* AFNetworkReachabilityManager.m in Sources */, - A91CA6F5355347DFCEA29231DED2D805 /* AFSecurityPolicy.m in Sources */, - 55663564E902A5510FC3881DA1FBF67E /* AFURLRequestSerialization.m in Sources */, - E3771BDC96E71EC693D8E0077F1D91AC /* AFURLResponseSerialization.m in Sources */, - 31E0BFAE0DE4C1C58E9EFD93DC054597 /* AFURLSessionManager.m in Sources */, + 6BEAD88E0859B1416B1892E021329FF7 /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 5F1AEC4BEF86EB08837C8CEEB206DA60 /* Sources */ = { + 8E6A9F4ACBC3073D84865E859BE54B07 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 97926D543BBAAFE8E14CC544E31F4BD0 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m in Sources */, + 61FDC6DA3F2FF9C1AE0475734D61B780 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 80AFF6D26BEB01E3C5A35437A574FF4F /* Sources */ = { + A5412CDC81E7FBA07357400E83F4A93B /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 946EFF93146FA52AFD42520697349936 /* Pods-TestingPods-OHHTTPStubs Mac Tests-dummy.m in Sources */, + E4F89F457F88F191272B6CA83D16B01D /* AFHTTPSessionManager.m in Sources */, + 68241C5398FFB4A122CBAD6C3E177571 /* AFNetworking-c94d3492-dummy.m in Sources */, + 4DC93F3BDF54B08FA3E989CD4DF017CC /* AFNetworkReachabilityManager.m in Sources */, + E0105A7CF3A99F4A040DA05B1680DE6A /* AFSecurityPolicy.m in Sources */, + 016F4D46CEE85431C795F70EF7820334 /* AFURLRequestSerialization.m in Sources */, + 3D3F97BA5040F3CB3D804D28C0FE0E09 /* AFURLResponseSerialization.m in Sources */, + BCB36E84146B13278F351E5FA8B8CB2E /* AFURLSessionManager.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - 9F013DFB01EC2C2A23E01368FB959DCE /* Sources */ = { + B90EA18A630C9BF68C88F42E0A34D10D /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - B1D14C1DBFF8048DFA8593DB11FCFF44 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m in Sources */, + 3BDBD076820682F665FF006779441DF2 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - D5696087864FB9982848D799CAB72950 /* Sources */ = { + BBFEF1BCF6FA15FB378B0D2593E855FE /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 907268E34649AB2AAB074BCA44C8000F /* AFAutoPurgingImageCache.m in Sources */, - 9591A2AD0135BE09CA49199BE0DF89A3 /* AFHTTPSessionManager.m in Sources */, - 32A0D7DB742D61FEF014C54D48960857 /* AFImageDownloader.m in Sources */, - C95B654D0777E3F59E627DB8154FBF64 /* AFNetworkActivityIndicatorManager.m in Sources */, - 4FD29B68A3B5F7B8FF60AA198DD25790 /* AFNetworking-iOS-dummy.m in Sources */, - 5FDCA4EEF5F7E9DEC06741EDC7C91923 /* AFNetworkReachabilityManager.m in Sources */, - E24C16DF4A790AA901FC78D88AD356FC /* AFSecurityPolicy.m in Sources */, - 0A90CEAFD09D78174FC763C95E302179 /* AFURLRequestSerialization.m in Sources */, - 3BF6D0D7ABF591F0C2A3D0ED8255FA15 /* AFURLResponseSerialization.m in Sources */, - D61AF81D29FD5A1B3D1BAE2AC75D880C /* AFURLSessionManager.m in Sources */, - E918FB9D9BEEF76125067E8CC98D963D /* UIActivityIndicatorView+AFNetworking.m in Sources */, - E0E06D042DA0183FA128B3698E5E006F /* UIButton+AFNetworking.m in Sources */, - 9CE73AE2C7D0BB9764D2BC98B5B405F0 /* UIImageView+AFNetworking.m in Sources */, - 23DC83D398DC88B656CB82A621197CD4 /* UIProgressView+AFNetworking.m in Sources */, - 141CEED22EC7683E8EBCA3FA9A98427A /* UIRefreshControl+AFNetworking.m in Sources */, - 7B84F986E685989A630FA5280DD03C70 /* UIWebView+AFNetworking.m in Sources */, + F2C63635E347AD481C4717ED22C92C53 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - E873E989E9F6557504C3691DBA37CCBF /* Sources */ = { + C635532E7C156128BB55A5AE440DA869 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - F850FC543153A64DFE92955ECDB4F337 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests-dummy.m in Sources */, + D30B31882C4B35D7264E121E775AD44D /* AFAutoPurgingImageCache.m in Sources */, + 0752B5A5EEBAB3C59D85352A97540C86 /* AFHTTPSessionManager.m in Sources */, + 361364EA6A17375DE09B30E1EB7E15A6 /* AFImageDownloader.m in Sources */, + 0AB356C315056E0A261AFA0CE83855AA /* AFNetworkActivityIndicatorManager.m in Sources */, + 4E353D5FB72CEA23621F16EDAA942E09 /* AFNetworking-tvOS-dummy.m in Sources */, + 506DCEEFD25E096799010C8F02ED6AAF /* AFNetworkReachabilityManager.m in Sources */, + DD5C0A9385F1AD7A8E538B89A1E42DAC /* AFSecurityPolicy.m in Sources */, + 8A8EC2808F49A59C41E1DDD691C20388 /* AFURLRequestSerialization.m in Sources */, + 6E1F6EBA486DF03FE9BB69A11FCCD2F4 /* AFURLResponseSerialization.m in Sources */, + BAE1798FDCE992187591B5D41BAE51CF /* AFURLSessionManager.m in Sources */, + E7D85F47D843EBEB7A6D6E13F8611440 /* UIActivityIndicatorView+AFNetworking.m in Sources */, + D64BA731F6AE8CB7EFC142B2D4D2FAF7 /* UIButton+AFNetworking.m in Sources */, + F063E8B4146556C8D0497773EC456BE0 /* UIImageView+AFNetworking.m in Sources */, + 9D94D6600E015A0569E4C1F800EF4F40 /* UIProgressView+AFNetworking.m in Sources */, + 7FB79BD0FEC16C39BA0265C6BF9BB3E7 /* UIRefreshControl+AFNetworking.m in Sources */, + E6A24673C0860870EEBBD1DEB39DF8C1 /* WKWebView+AFNetworking.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 67EA370C59DC523A241BC72B78563533 /* PBXTargetDependency */ = { + 436726D9C29276D2AD58A2C23FE9F194 /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "AFNetworking-c94d3492"; - target = 163E987AE2E029D9EB0B15C75EDE7869 /* AFNetworking-c94d3492 */; - targetProxy = F85EB9E30D7904CCA7FF65EE3B498A01 /* PBXContainerItemProxy */; + name = "AFNetworking-iOS"; + target = A40CE905A4774C859184BC4AA3767B1D /* AFNetworking-iOS */; + targetProxy = 6A6CF474A34135ED057D560C98F4E33E /* PBXContainerItemProxy */; }; - 793B2CDC9B24F3CA7A1DC4BB6C234AFC /* PBXTargetDependency */ = { + 5CAD717BE26EB4D10DA7BF34985BA9C6 /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "AFNetworking-iOS"; - target = 294529C77198ECB248E415B29FDC9441 /* AFNetworking-iOS */; - targetProxy = 3E8F186EC3374BF269EF3836BA0B646E /* PBXContainerItemProxy */; + target = A40CE905A4774C859184BC4AA3767B1D /* AFNetworking-iOS */; + targetProxy = 293928BAFAB76DE03530DC64DF5D133E /* PBXContainerItemProxy */; }; - AFB25B32E7ED42BEC067C5F909AEFE7F /* PBXTargetDependency */ = { + 6A8C2589A44BEC700A62C6A7645E6A5B /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = "AFNetworking-tvOS"; - target = D70B3FB3184A448A3E88112CBF71A2AA /* AFNetworking-tvOS */; - targetProxy = 512D17CE7818DBB43842FC8176228B38 /* PBXContainerItemProxy */; + target = DA88B26FFB2107D8AB235DC0EA18CFA3 /* AFNetworking-tvOS */; + targetProxy = D552B1F24BF815EB83CA37D80F3C790F /* PBXContainerItemProxy */; }; - C9DA06B86A50A50FA261BE5EAC3A4735 /* PBXTargetDependency */ = { + E18E643A9B624AAE36DEE7E4AAE0F70B /* PBXTargetDependency */ = { isa = PBXTargetDependency; - name = "AFNetworking-iOS"; - target = 294529C77198ECB248E415B29FDC9441 /* AFNetworking-iOS */; - targetProxy = A498827688C4618D5E134F7CA98F0A02 /* PBXContainerItemProxy */; + name = "AFNetworking-c94d3492"; + target = E8D7B0AF5976ACD3CF5C49E400D39B8F /* AFNetworking-c94d3492 */; + targetProxy = C519096921A3DEA93936B52729EDB755 /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 02B3AB406648BB84F70B6F5DEA108237 /* Debug */ = { + 01E2A37FCA68677674A504E2DDC49A55 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 6FBA92CB9D96563B602A87AAFCFCAD7C /* AFNetworking-c94d3492.xcconfig */; + baseConfigurationReference = D59EE0D3224BB235CD5822D94DE0FE22 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig */; buildSettings = { - CODE_SIGN_IDENTITY = "-"; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - EXECUTABLE_PREFIX = lib; - GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492-prefix.pch"; - MACOSX_DEPLOYMENT_TARGET = 10.9; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MACH_O_TYPE = staticlib; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = AFNetworking; - PRODUCT_NAME = "AFNetworking-c94d3492"; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = macosx; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; }; - name = Debug; + name = Release; }; - 1DDF6121A925E14FFDCAC59DFBCF4523 /* Debug */ = { + 27143CCAD301DA4A0DB8C7CACBBD5B14 /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; @@ -881,6 +887,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -888,16 +895,13 @@ CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_DEBUG=1", - "DEBUG=1", + "POD_CONFIGURATION_RELEASE=1", "$(inherited)", ); GCC_WARN_64_TO_32_BIT_CONVERSION = YES; @@ -906,135 +910,141 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.9; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; PRODUCT_NAME = "$(TARGET_NAME)"; STRIP_INSTALLED_PRODUCT = NO; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.2; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + SWIFT_VERSION = 5.0; SYMROOT = "${SRCROOT}/../build"; TVOS_DEPLOYMENT_TARGET = 9.0; }; - name = Debug; + name = Release; }; - 25831FB79A5C56A31CE19090703E2593 /* Debug */ = { + 291C37DA12E52D6C0FDD50AAA87EC2C7 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5700278C2E8921B744D90A32E4B2E33E /* AFNetworking-tvOS.xcconfig */; + baseConfigurationReference = E5787EE7E5B0B0BE7C0AABB594BC583B /* AFNetworking-iOS.release.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch"; + GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-iOS/AFNetworking-iOS-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; PRODUCT_MODULE_NAME = AFNetworking; - PRODUCT_NAME = "AFNetworking-tvOS"; + PRODUCT_NAME = "AFNetworking-iOS"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = appletvos; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; }; - name = Debug; + name = Release; }; - 345B1F678F11C05E971C1CFAA0BC1667 /* Release */ = { + 534E87EA4220421A34A4DA45898F2E45 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = F75CD6E2E41BE668BB8D768FD76FB0EC /* Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig */; + baseConfigurationReference = F04B91FA80C99AE730CFBF2BF9F4B41B /* AFNetworking-c94d3492.debug.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = "-"; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; EXECUTABLE_PREFIX = lib; - MACH_O_TYPE = staticlib; - MACOSX_DEPLOYMENT_TARGET = 10.9; + GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492-prefix.pch"; + MACOSX_DEPLOYMENT_TARGET = 10.10; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = AFNetworking; + PRODUCT_NAME = "AFNetworking-c94d3492"; + PUBLIC_HEADERS_FOLDER_PATH = ""; SDKROOT = macosx; SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; }; - name = Release; + name = Debug; }; - 43CF42126E8E71F38E7356350FA61E57 /* Release */ = { + 58C0E0F0E0E74E878793003AE1006250 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5700278C2E8921B744D90A32E4B2E33E /* AFNetworking-tvOS.xcconfig */; + baseConfigurationReference = 4B49ECEF4F1253A2AEA4ADAEF1A61E19 /* AFNetworking-iOS.debug.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch"; + GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-iOS/AFNetworking-iOS-prefix.pch"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; PRODUCT_MODULE_NAME = AFNetworking; - PRODUCT_NAME = "AFNetworking-tvOS"; + PRODUCT_NAME = "AFNetworking-iOS"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = appletvos; + SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = 3; - TVOS_DEPLOYMENT_TARGET = 9.0; - VALIDATE_PRODUCT = YES; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; }; - name = Release; + name = Debug; }; - 447A11DFF9E43C48963560DD326E721D /* Debug */ = { + 69B50EC38CED9D7F4348F8D955F5DF22 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 224B56DD647BF513E9D8F34F6A809DF6 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig */; + baseConfigurationReference = 5FA19907CC61635AE61E7208B2D1CCBA /* AFNetworking-tvOS.release.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACH_O_TYPE = staticlib; + GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - SDKROOT = iphoneos; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = AFNetworking; + PRODUCT_NAME = "AFNetworking-tvOS"; + PUBLIC_HEADERS_FOLDER_PATH = ""; + SDKROOT = appletvos; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; + VALIDATE_PRODUCT = YES; }; - name = Debug; + name = Release; }; - 61CC5216F1BEBC340B383D4F722559F8 /* Release */ = { + 713944307A38B0290D435C26F038A9B8 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 375ECC43A9266AB5C20E91070910BE33 /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig */; + baseConfigurationReference = C65226CA0FE3C199A375875670567884 /* Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = "iPhone Developer"; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + EXECUTABLE_PREFIX = lib; MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.10; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - SDKROOT = iphoneos; + SDKROOT = macosx; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; }; - name = Release; + name = Debug; }; - 710E4AEF0282FFC10C760902DA36BECF /* Release */ = { + 7CFE409ACE0DB34A922A12C8C89C0548 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 225EA8457A11BA3434034790BCDC374E /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig */; + baseConfigurationReference = F58F9B920BF2F2D39DA726F7A00522FC /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -1053,86 +1063,126 @@ }; name = Release; }; - 72D797D6A1C236F9084F144930163C4E /* Release */ = { + 9BDEC0968860A867B158B7FBFB84DF69 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 6FBA92CB9D96563B602A87AAFCFCAD7C /* AFNetworking-c94d3492.xcconfig */; + baseConfigurationReference = DB8247269F859CCF6E338FD603326859 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig */; buildSettings = { - CODE_SIGN_IDENTITY = "-"; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - EXECUTABLE_PREFIX = lib; - GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492-prefix.pch"; - MACOSX_DEPLOYMENT_TARGET = 10.9; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MACH_O_TYPE = staticlib; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = AFNetworking; - PRODUCT_NAME = "AFNetworking-c94d3492"; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = macosx; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; }; name = Release; }; - 7E16F15DEA6FF81A33CF59C29E9215E0 /* Release */ = { + 9EDCF0D114F476DADB53C13B78F4D85F /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D2B487F97B81E3910E1CA2A32AB6FF96 /* AFNetworking-iOS.xcconfig */; buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-iOS/AFNetworking-iOS-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PRIVATE_HEADERS_FOLDER_PATH = ""; - PRODUCT_MODULE_NAME = AFNetworking; - PRODUCT_NAME = "AFNetworking-iOS"; - PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MACOSX_DEPLOYMENT_TARGET = 10.10; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + PRODUCT_NAME = "$(TARGET_NAME)"; + STRIP_INSTALLED_PRODUCT = NO; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + SYMROOT = "${SRCROOT}/../build"; + TVOS_DEPLOYMENT_TARGET = 9.0; }; - name = Release; + name = Debug; }; - 92EAD65E589E5B42D3B19AD931637F67 /* Debug */ = { + A8899CA3498EC367E48F450A6CB7354B /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 45A396A85D76FDCBD6D52CF077E055B3 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig */; + baseConfigurationReference = FA0AA55F314EC70BE6E6F37CEA16E7B3 /* Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = "iPhone Developer"; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + EXECUTABLE_PREFIX = lib; MACH_O_TYPE = staticlib; + MACOSX_DEPLOYMENT_TARGET = 10.10; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PODS_ROOT = "$(SRCROOT)"; PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - SDKROOT = iphoneos; + SDKROOT = macosx; SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; }; - name = Debug; + name = Release; }; - 93BD4C065E51ABBB3E3C4BCE3A847A18 /* Release */ = { + C1CF38937E7E273721C396B707ABDCE0 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 5154A04BF6B939CC5C91B26BC3B235C6 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig */; + baseConfigurationReference = EE7CC8468FF010D971A0BAFF20374AEA /* Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; MACH_O_TYPE = staticlib; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; @@ -1141,58 +1191,60 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; }; - name = Release; + name = Debug; }; - CA3C8B4EC312BF16F6268F0CFF1A4F32 /* Debug */ = { + C34BE77D3993CAC9C989980B27BCF62C /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 64D97EE63038FA87063A3BE46DA25121 /* Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig */; + baseConfigurationReference = E3A58B82C1E4462CDC21E387C3A1588D /* AFNetworking-c94d3492.release.xcconfig */; buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; - CODE_SIGN_IDENTITY = "-"; + ARCHS = "$(ARCHS_STANDARD_64_BIT)"; + CLANG_ENABLE_OBJC_WEAK = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; EXECUTABLE_PREFIX = lib; - MACH_O_TYPE = staticlib; - MACOSX_DEPLOYMENT_TARGET = 10.9; + GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492-prefix.pch"; + MACOSX_DEPLOYMENT_TARGET = 10.10; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRIVATE_HEADERS_FOLDER_PATH = ""; + PRODUCT_MODULE_NAME = AFNetworking; + PRODUCT_NAME = "AFNetworking-c94d3492"; + PUBLIC_HEADERS_FOLDER_PATH = ""; SDKROOT = macosx; SKIP_INSTALL = YES; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; + SWIFT_VERSION = 5.0; }; - name = Debug; + name = Release; }; - CD950C4F2A9B356E05BD094AB37FFC21 /* Debug */ = { + D0F75F256F2F97A4E7D2673F64E090A5 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = D2B487F97B81E3910E1CA2A32AB6FF96 /* AFNetworking-iOS.xcconfig */; + baseConfigurationReference = 6A78FDA791B6D439081E2928E8EBAF70 /* AFNetworking-tvOS.debug.xcconfig */; buildSettings = { - CODE_SIGN_IDENTITY = "iPhone Developer"; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-iOS/AFNetworking-iOS-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; + GCC_PREFIX_HEADER = "Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch"; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; PRIVATE_HEADERS_FOLDER_PATH = ""; PRODUCT_MODULE_NAME = AFNetworking; - PRODUCT_NAME = "AFNetworking-iOS"; + PRODUCT_NAME = "AFNetworking-tvOS"; PUBLIC_HEADERS_FOLDER_PATH = ""; - SDKROOT = iphoneos; + SDKROOT = appletvos; SKIP_INSTALL = YES; SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) "; - SWIFT_VERSION = 4.2; - TARGETED_DEVICE_FAMILY = "1,2"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = 3; + TVOS_DEPLOYMENT_TARGET = 9.0; }; name = Debug; }; - E0DBB13FA55F7DF77A8AAC8A8CB30F7C /* Debug */ = { + D607C1596324E5D88042909FF3124113 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = A7FFBE99241E2C30FB09E85564DA1D88 /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig */; + baseConfigurationReference = 3C3BA82DEE72E39C08D4650A93AA4A9A /* Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig */; buildSettings = { ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; @@ -1210,144 +1262,102 @@ }; name = Debug; }; - E680C172ADDC70B93B11A1B8C3F6D834 /* Release */ = { + DD7D6336F0C436E22859DA477A626C00 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = C5C9DA79D891FF65A391C1BE592E65D6 /* Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig */; buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_PREPROCESSOR_DEFINITIONS = ( - "POD_CONFIGURATION_RELEASE=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.0; - MACOSX_DEPLOYMENT_TARGET = 10.9; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - PRODUCT_NAME = "$(TARGET_NAME)"; - STRIP_INSTALLED_PRODUCT = NO; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.2; - SYMROOT = "${SRCROOT}/../build"; - TVOS_DEPLOYMENT_TARGET = 9.0; + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO; + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MACH_O_TYPE = staticlib; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + TARGETED_DEVICE_FAMILY = "1,2"; }; - name = Release; + name = Debug; }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { + 150851E270DCBB5B39F1D9DCB9F6E0AA /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs Mac Tests" */ = { isa = XCConfigurationList; buildConfigurations = ( - 1DDF6121A925E14FFDCAC59DFBCF4523 /* Debug */, - E680C172ADDC70B93B11A1B8C3F6D834 /* Release */, + 713944307A38B0290D435C26F038A9B8 /* Debug */, + A8899CA3498EC367E48F450A6CB7354B /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 3BDF0FBD49C6F8B40C551849FAA61459 /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests" */ = { + 1AB3CEE8A6AF144EE1DE63777B5D3F37 /* Build configuration list for PBXNativeTarget "AFNetworking-c94d3492" */ = { isa = XCConfigurationList; buildConfigurations = ( - E0DBB13FA55F7DF77A8AAC8A8CB30F7C /* Debug */, - 710E4AEF0282FFC10C760902DA36BECF /* Release */, + 534E87EA4220421A34A4DA45898F2E45 /* Debug */, + C34BE77D3993CAC9C989980B27BCF62C /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 4D26715B140BC177322AF14551B3739B /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests" */ = { + 4821239608C13582E20E6DA73FD5F1F9 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - 447A11DFF9E43C48963560DD326E721D /* Debug */, - 61CC5216F1BEBC340B383D4F722559F8 /* Release */, + 9EDCF0D114F476DADB53C13B78F4D85F /* Debug */, + 27143CCAD301DA4A0DB8C7CACBBD5B14 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 61315F1E7D712E5C10A013F7CA3738F2 /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs iOS Lib Tests" */ = { + 663A80F994264D06A21947A8993F54FB /* Build configuration list for PBXNativeTarget "AFNetworking-tvOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 92EAD65E589E5B42D3B19AD931637F67 /* Debug */, - 93BD4C065E51ABBB3E3C4BCE3A847A18 /* Release */, + D0F75F256F2F97A4E7D2673F64E090A5 /* Debug */, + 69B50EC38CED9D7F4348F8D955F5DF22 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 6E102AEADA192885A73F950AFC0FCC79 /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs Mac Tests" */ = { + 96D8E6841B1094CD5E6C056EF41B4719 /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs iOS Lib Tests" */ = { isa = XCConfigurationList; buildConfigurations = ( - CA3C8B4EC312BF16F6268F0CFF1A4F32 /* Debug */, - 345B1F678F11C05E971C1CFAA0BC1667 /* Release */, + DD7D6336F0C436E22859DA477A626C00 /* Debug */, + 9BDEC0968860A867B158B7FBFB84DF69 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - A6B6FC863E8EA6582C55995B87A8E595 /* Build configuration list for PBXNativeTarget "AFNetworking-tvOS" */ = { + C1D762A4B43B5F748FC4E4BF530D4C8D /* Build configuration list for PBXNativeTarget "AFNetworking-iOS" */ = { isa = XCConfigurationList; buildConfigurations = ( - 25831FB79A5C56A31CE19090703E2593 /* Debug */, - 43CF42126E8E71F38E7356350FA61E57 /* Release */, + 58C0E0F0E0E74E878793003AE1006250 /* Debug */, + 291C37DA12E52D6C0FDD50AAA87EC2C7 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - D5C19D094090B561DE0D6763C010330B /* Build configuration list for PBXNativeTarget "AFNetworking-c94d3492" */ = { + C5ACEBE7A0B01A73E837A61CE6E6C5EA /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests" */ = { isa = XCConfigurationList; buildConfigurations = ( - 02B3AB406648BB84F70B6F5DEA108237 /* Debug */, - 72D797D6A1C236F9084F144930163C4E /* Release */, + D607C1596324E5D88042909FF3124113 /* Debug */, + 7CFE409ACE0DB34A922A12C8C89C0548 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - E255DDD270476C203438B6706952D083 /* Build configuration list for PBXNativeTarget "AFNetworking-iOS" */ = { + CB5260C30042B45B03FF7ED24B81E01C /* Build configuration list for PBXNativeTarget "Pods-TestingPods-OHHTTPStubs iOS Fmk Tests" */ = { isa = XCConfigurationList; buildConfigurations = ( - CD950C4F2A9B356E05BD094AB37FFC21 /* Debug */, - 7E16F15DEA6FF81A33CF59C29E9215E0 /* Release */, + C1CF38937E7E273721C396B707ABDCE0 /* Debug */, + 01E2A37FCA68677674A504E2DDC49A55 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; /* End XCConfigurationList section */ }; - rootObject = D41D8CD98F00B204E9800998ECF8427E /* Project object */; + rootObject = BFDFE7DC352907FC980B868725387E98 /* Project object */; } diff --git a/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492-prefix.pch b/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492-prefix.pch index 759a81aa..082f8af2 100644 --- a/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492-prefix.pch +++ b/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492-prefix.pch @@ -10,14 +10,3 @@ #endif #endif -#ifndef TARGET_OS_IOS - #define TARGET_OS_IOS TARGET_OS_IPHONE -#endif - -#ifndef TARGET_OS_WATCH - #define TARGET_OS_WATCH 0 -#endif - -#ifndef TARGET_OS_TV - #define TARGET_OS_TV 0 -#endif diff --git a/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492.debug.xcconfig b/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492.debug.xcconfig new file mode 100644 index 00000000..4a0aa9d7 --- /dev/null +++ b/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492.debug.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-c94d3492 +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/AFNetworking" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/AFNetworking +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = com.alamofire.AFNetworking +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492.release.xcconfig b/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492.release.xcconfig new file mode 100644 index 00000000..4a0aa9d7 --- /dev/null +++ b/Pods/Target Support Files/AFNetworking-c94d3492/AFNetworking-c94d3492.release.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-c94d3492 +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/AFNetworking" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/AFNetworking +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = com.alamofire.AFNetworking +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS-prefix.pch b/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS-prefix.pch index e72247a9..beb2a244 100644 --- a/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS-prefix.pch +++ b/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS-prefix.pch @@ -10,14 +10,3 @@ #endif #endif -#ifndef TARGET_OS_IOS - #define TARGET_OS_IOS TARGET_OS_IPHONE -#endif - -#ifndef TARGET_OS_WATCH - #define TARGET_OS_WATCH 0 -#endif - -#ifndef TARGET_OS_TV - #define TARGET_OS_TV 0 -#endif diff --git a/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS.debug.xcconfig b/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS.debug.xcconfig new file mode 100644 index 00000000..0dcb3e1a --- /dev/null +++ b/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS.debug.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-iOS +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/AFNetworking" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/AFNetworking +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = com.alamofire.AFNetworking +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS.release.xcconfig b/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS.release.xcconfig new file mode 100644 index 00000000..0dcb3e1a --- /dev/null +++ b/Pods/Target Support Files/AFNetworking-iOS/AFNetworking-iOS.release.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-iOS +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/AFNetworking" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/AFNetworking +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = com.alamofire.AFNetworking +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch b/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch index e72247a9..beb2a244 100644 --- a/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch +++ b/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS-prefix.pch @@ -10,14 +10,3 @@ #endif #endif -#ifndef TARGET_OS_IOS - #define TARGET_OS_IOS TARGET_OS_IPHONE -#endif - -#ifndef TARGET_OS_WATCH - #define TARGET_OS_WATCH 0 -#endif - -#ifndef TARGET_OS_TV - #define TARGET_OS_TV 0 -#endif diff --git a/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS.debug.xcconfig b/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS.debug.xcconfig new file mode 100644 index 00000000..cdc44ae0 --- /dev/null +++ b/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS.debug.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-tvOS +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/AFNetworking" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/AFNetworking +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = com.alamofire.AFNetworking +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS.release.xcconfig b/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS.release.xcconfig new file mode 100644 index 00000000..cdc44ae0 --- /dev/null +++ b/Pods/Target Support Files/AFNetworking-tvOS/AFNetworking-tvOS.release.xcconfig @@ -0,0 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO +CONFIGURATION_BUILD_DIR = ${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-tvOS +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/AFNetworking" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" +PODS_BUILD_DIR = ${BUILD_DIR} +PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PODS_TARGET_SRCROOT = ${PODS_ROOT}/AFNetworking +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +PRODUCT_BUNDLE_IDENTIFIER = com.alamofire.AFNetworking +SKIP_INSTALL = YES +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown index aa247077..b848d711 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.markdown @@ -3,7 +3,7 @@ This application makes use of the following third party libraries: ## AFNetworking -Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist index d26166b2..b55ee49e 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests-acknowledgements.plist @@ -14,7 +14,7 @@ FooterText - Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) + Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig index 7cd9abca..c30dad69 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests.debug.xcconfig @@ -1,9 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-c94d3492" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/AFNetworking" -OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-c94d3492" -framework "CoreServices" -framework "Security" -framework "SystemConfiguration" +OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-c94d3492" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig index 7cd9abca..c30dad69 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs Mac Tests/Pods-TestingPods-OHHTTPStubs Mac Tests.release.xcconfig @@ -1,9 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-c94d3492" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/AFNetworking" -OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-c94d3492" -framework "CoreServices" -framework "Security" -framework "SystemConfiguration" +OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-c94d3492" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown index aa247077..b848d711 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.markdown @@ -3,7 +3,7 @@ This application makes use of the following third party libraries: ## AFNetworking -Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist index d26166b2..b55ee49e 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests-acknowledgements.plist @@ -14,7 +14,7 @@ FooterText - Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) + Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig index f0a68f71..754184cb 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.debug.xcconfig @@ -1,9 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-iOS" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/AFNetworking" -OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-iOS" -framework "CoreGraphics" -framework "MobileCoreServices" -framework "Security" -framework "SystemConfiguration" +OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-iOS" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig index f0a68f71..754184cb 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests/Pods-TestingPods-OHHTTPStubs iOS Fmk Tests.release.xcconfig @@ -1,9 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-iOS" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/AFNetworking" -OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-iOS" -framework "CoreGraphics" -framework "MobileCoreServices" -framework "Security" -framework "SystemConfiguration" +OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-iOS" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown index aa247077..b848d711 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.markdown @@ -3,7 +3,7 @@ This application makes use of the following third party libraries: ## AFNetworking -Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist index d26166b2..b55ee49e 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests-acknowledgements.plist @@ -14,7 +14,7 @@ FooterText - Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) + Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig index f0a68f71..754184cb 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests.debug.xcconfig @@ -1,9 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-iOS" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/AFNetworking" -OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-iOS" -framework "CoreGraphics" -framework "MobileCoreServices" -framework "Security" -framework "SystemConfiguration" +OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-iOS" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig index f0a68f71..754184cb 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs iOS Lib Tests/Pods-TestingPods-OHHTTPStubs iOS Lib Tests.release.xcconfig @@ -1,9 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-iOS" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/AFNetworking" -OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-iOS" -framework "CoreGraphics" -framework "MobileCoreServices" -framework "Security" -framework "SystemConfiguration" +OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-iOS" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown index aa247077..b848d711 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.markdown @@ -3,7 +3,7 @@ This application makes use of the following third party libraries: ## AFNetworking -Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) +Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist index d26166b2..b55ee49e 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests-acknowledgements.plist @@ -14,7 +14,7 @@ FooterText - Copyright (c) 2011–2015 Alamofire Software Foundation (http://alamofire.org/) + Copyright (c) 2011-2020 Alamofire Software Foundation (http://alamofire.org/) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig index ed64c4d6..9e974ab7 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.debug.xcconfig @@ -1,9 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-tvOS" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/AFNetworking" -OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-tvOS" -framework "Security" -framework "SystemConfiguration" +OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-tvOS" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig index ed64c4d6..9e974ab7 100644 --- a/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig +++ b/Pods/Target Support Files/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests/Pods-TestingPods-OHHTTPStubs tvOS Fmk Tests.release.xcconfig @@ -1,9 +1,12 @@ +CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/AFNetworking" LIBRARY_SEARCH_PATHS = $(inherited) "${PODS_CONFIGURATION_BUILD_DIR}/AFNetworking-tvOS" OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/AFNetworking" -OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-tvOS" -framework "Security" -framework "SystemConfiguration" +OTHER_LDFLAGS = $(inherited) -ObjC -l"AFNetworking-tvOS" PODS_BUILD_DIR = ${BUILD_DIR} PODS_CONFIGURATION_BUILD_DIR = ${PODS_BUILD_DIR}/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) PODS_PODFILE_DIR_PATH = ${SRCROOT}/. PODS_ROOT = ${SRCROOT}/Pods +PODS_XCFRAMEWORKS_BUILD_DIR = $(PODS_CONFIGURATION_BUILD_DIR)/XCFrameworkIntermediates +USE_RECURSIVE_SCRIPT_INPUTS_IN_SCRIPT_PHASES = YES diff --git a/README.md b/README.md index 672e7570..ed2df44b 100644 --- a/README.md +++ b/README.md @@ -74,7 +74,7 @@ _(There are also other ways to perform a similar task, including using `curl -is # Compatibility -* `OHHTTPStubs` is compatible with **iOS5+**, **OS X 10.7+**, **tvOS**. +* `OHHTTPStubs` is compatible with **iOS9+**, **OS X 10.10+**, **tvOS**. * `OHHTTPStubs` also works with `NSURLSession` as well as any network library wrapping them. * `OHHTTPStubs` is **fully compatible with Swift 3.x, 4.x and Swift 5.x**. diff --git a/Tests/OHHTTPStubsTests/AFNetworkingTests.m b/Tests/OHHTTPStubsTests/AFNetworkingTests.m index e5b4cf03..228b6bbb 100644 --- a/Tests/OHHTTPStubsTests/AFNetworkingTests.m +++ b/Tests/OHHTTPStubsTests/AFNetworkingTests.m @@ -69,7 +69,7 @@ -(void)test_AFHTTPRequestOperation_success __block __strong id response = nil; AFHTTPSessionManager *manager = [AFHTTPSessionManager manager]; [manager setResponseSerializer:[AFHTTPResponseSerializer serializer]]; - [manager GET:URL.absoluteString parameters:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) { + [manager GET:URL.absoluteString parameters:nil headers:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) { response = responseObject; // keep strong reference [expectation fulfill]; } failure:^(NSURLSessionTask *operation, NSError *error) { @@ -111,7 +111,7 @@ -(void)test_AFHTTPRequestOperation_multiple_choices return nil; }]; - [manager GET:URL.absoluteString parameters:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) { + [manager GET:URL.absoluteString parameters:nil headers:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) { response = responseObject; // keep strong reference [expectation fulfill]; } failure:^(NSURLSessionTask *operation, NSError *error) { @@ -156,7 +156,7 @@ -(void)test_AFHTTPRequestOperation_redirect return nil; }]; - [manager GET:req.URL.absoluteString parameters:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) { + [manager GET:req.URL.absoluteString parameters:nil headers:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) { // Expect the 302 response when the redirection block returns nil (don't follow redirects) [expectation fulfill]; } failure:^(NSURLSessionTask *operation, NSError *error) { @@ -199,7 +199,7 @@ -(void)test_AFHTTPRequestOperation_redirect_baseline return nil; }]; - [manager GET:req.URL.absoluteString parameters:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) { + [manager GET:req.URL.absoluteString parameters:nil headers:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) { // Expect the 302 response when the redirection block returns nil (don't follow redirects) [expectation fulfill]; } failure:^(NSURLSessionTask *operation, NSError *error) { @@ -258,6 +258,7 @@ - (void)test_AFHTTPURLSessionCustom __block __strong id response = nil; [sessionManager GET:@"foo" parameters:nil + headers:nil progress:nil success:^(NSURLSessionDataTask *task, id responseObject) { response = responseObject; // keep strong reference