杨锴
2025-04-16 09a372bc45fde16fd42257ab6f78b8deeecf720b
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
//
//  OSSNetworkingRequestDelegate.h
//  AliyunOSSSDK
//
//  Created by huaixu on 2018/1/22.
//  Copyright © 2018年 aliyun. All rights reserved.
//
 
#import <Foundation/Foundation.h>
#import "OSSConstants.h"
#import "OSSTask.h"
 
@class OSSAllRequestNeededMessage;
@class OSSURLRequestRetryHandler;
@class OSSHttpResponseParser;
 
/**
 The proxy object class for each OSS request.
 */
@interface OSSNetworkingRequestDelegate : NSObject
 
@property (nonatomic, strong) NSMutableArray * interceptors;
 
@property (nonatomic, strong) NSMutableURLRequest *internalRequest;
@property (nonatomic, assign) OSSOperationType operType;
@property (nonatomic, assign) BOOL isAccessViaProxy;
 
@property (nonatomic, assign) BOOL isRequestCancelled;
 
@property (nonatomic, strong) OSSAllRequestNeededMessage *allNeededMessage;
@property (nonatomic, strong) OSSURLRequestRetryHandler *retryHandler;
@property (nonatomic, strong) OSSHttpResponseParser *responseParser;
 
@property (nonatomic, strong) NSData * uploadingData;
@property (nonatomic, strong) NSURL * uploadingFileURL;
 
@property (nonatomic, assign) int64_t payloadTotalBytesWritten;
 
@property (nonatomic, assign) BOOL isBackgroundUploadFileTask;
@property (nonatomic, assign) BOOL isHttpdnsEnable;
 
@property (nonatomic, assign) BOOL isPathStyleAccessEnable;
@property (nonatomic, assign) BOOL isCustomPathPrefixEnable;
@property (nonatomic, copy) NSArray * cnameExcludeList;
 
@property (nonatomic, assign) uint32_t currentRetryCount;
@property (nonatomic, strong) NSError * error;
@property (nonatomic, assign) BOOL isHttpRequestNotSuccessResponse;
@property (nonatomic, strong) NSMutableData *httpRequestNotSuccessResponseBody;
 
@property (atomic, strong) NSURLSessionDataTask *currentSessionTask;
 
@property (nonatomic, strong) NSURLSessionTaskMetrics *metrics API_AVAILABLE(macos(10.12), ios(10.0));
 
@property (nonatomic, copy) OSSNetworkingUploadProgressBlock uploadProgress;
@property (nonatomic, copy) OSSNetworkingDownloadProgressBlock downloadProgress;
@property (nonatomic, copy) OSSNetworkingRetryBlock retryCallback;
@property (nonatomic, copy) OSSNetworkingCompletionHandlerBlock completionHandler;
@property (nonatomic, copy) OSSNetworkingOnRecieveDataBlock onRecieveData;
 
/**
 * when put object to server,client caculate crc64 code and assigns it to
 * this property.
 */
@property (nonatomic, copy) NSString *contentCRC;
 
/** last crc64 code */
@property (nonatomic, copy) NSString *lastCRC;
 
/**
 * determine whether to verify crc64 code
 */
@property (nonatomic, assign) BOOL crc64Verifiable;
 
 
 
- (OSSTask *)buildInternalHttpRequest;
- (void)reset;
- (void)cancel;
 
@end