AliyunOSSSDK/OSSNetworking.h (28 lines of code) (raw):

// // OSSNetworking.h // oss_ios_sdk // // Created by zhouzhuo on 8/16/15. // Copyright (c) 2015 aliyun.com. All rights reserved. // #import <Foundation/Foundation.h> #import "OSSModel.h" @class OSSSyncMutableDictionary; @class OSSNetworkingRequestDelegate; @class OSSExecutor; /** Network parameters */ @interface OSSNetworkingConfiguration : NSObject @property (nonatomic, assign) uint32_t maxRetryCount; @property (nonatomic, assign) uint32_t maxConcurrentRequestCount; @property (nonatomic, assign) BOOL enableBackgroundTransmitService; @property (nonatomic, strong) NSString * backgroundSessionIdentifier; @property (nonatomic, assign) NSTimeInterval timeoutIntervalForRequest; @property (nonatomic, assign) NSTimeInterval timeoutIntervalForResource; @property (nonatomic, strong) NSString * proxyHost; @property (nonatomic, strong) NSNumber * proxyPort; @property (nonatomic, assign) BOOL enableFollowRedirects; @property (nonatomic, assign) BOOL enableNetworkMetricInfo; @property (nonatomic, assign) uint32_t HTTPMaximumConnectionsPerHost; @property (nonatomic, assign) BOOL enableResetRetryCount; @end /** The network interface which OSSClient uses for network read and write operations. */ @interface OSSNetworking : NSObject <NSURLSessionDelegate, NSURLSessionDataDelegate> @property (nonatomic, strong) NSURLSession * session; @property (nonatomic, assign) BOOL isUsingBackgroundSession; @property (nonatomic, strong) OSSSyncMutableDictionary * sessionDelagateManager; @property (nonatomic, strong) OSSNetworkingConfiguration * configuration; @property (nonatomic, strong) OSSExecutor * taskExecutor; - (instancetype)initWithConfiguration:(OSSNetworkingConfiguration *)configuration; - (OSSTask *)sendRequest:(OSSNetworkingRequestDelegate *)request; @end