Skip to content

Commit 6c461c6

Browse files
authored
Merge pull request #418 from YangSen-qn/multi-region
support multi region
2 parents 42d25c3 + 5df1b6a commit 6c461c6

File tree

14 files changed

+230
-32
lines changed

14 files changed

+230
-32
lines changed

QiniuDemo/QiniuDemo/ViewController.m

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -143,10 +143,10 @@ - (void)uploadImageToQNFilePath:(NSString *)filePath complete:(dispatch_block_t)
143143

144144
builder.useConcurrentResumeUpload = true;
145145
builder.concurrentTaskCount = 3;
146-
builder.resumeUploadVersion = QNResumeUploadVersionV1;
146+
builder.resumeUploadVersion = QNResumeUploadVersionV2;
147147
builder.putThreshold = 4*1024*1024;
148148
builder.chunkSize = 1*1024*1024;
149-
builder.zone = [[QNFixedZone alloc] initWithUpDomainList:@[kUploadFixHost00, kUploadFixHost01]];
149+
// builder.zone = [[QNFixedZone alloc] initWithUpDomainList:@[kUploadFixHost00, kUploadFixHost01]];
150150
NSString *recorderPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
151151
NSLog(@"== record path:%@", recorderPath);
152152
builder.recorder = [QNFileRecorder fileRecorderWithFolder:recorderPath error:nil];

QiniuSDK.xcodeproj/project.pbxproj

Lines changed: 54 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -356,6 +356,10 @@
356356
4551E56724D0065100447285 /* NSData+QNMD5.h in Headers */ = {isa = PBXBuildFile; fileRef = 4551E56524D0065100447285 /* NSData+QNMD5.h */; };
357357
4551E56824D0065100447285 /* NSData+QNMD5.m in Sources */ = {isa = PBXBuildFile; fileRef = 4551E56624D0065100447285 /* NSData+QNMD5.m */; };
358358
4551E56924D0065100447285 /* NSData+QNMD5.m in Sources */ = {isa = PBXBuildFile; fileRef = 4551E56624D0065100447285 /* NSData+QNMD5.m */; };
359+
45CFDAFB292370720077890F /* QNApiType.h in Headers */ = {isa = PBXBuildFile; fileRef = 45CFDAF9292370720077890F /* QNApiType.h */; };
360+
45CFDAFC292370720077890F /* QNApiType.h in Headers */ = {isa = PBXBuildFile; fileRef = 45CFDAF9292370720077890F /* QNApiType.h */; };
361+
45CFDAFD292370720077890F /* QNApiType.m in Sources */ = {isa = PBXBuildFile; fileRef = 45CFDAFA292370720077890F /* QNApiType.m */; };
362+
45CFDAFE292370720077890F /* QNApiType.m in Sources */ = {isa = PBXBuildFile; fileRef = 45CFDAFA292370720077890F /* QNApiType.m */; };
359363
CC25135C244C7EB3003F4C65 /* QNBaseUpload.h in Headers */ = {isa = PBXBuildFile; fileRef = CC25135A244C7EB3003F4C65 /* QNBaseUpload.h */; };
360364
CC25135D244C7EB3003F4C65 /* QNBaseUpload.m in Sources */ = {isa = PBXBuildFile; fileRef = CC25135B244C7EB3003F4C65 /* QNBaseUpload.m */; };
361365
CC25135E244C7EB3003F4C65 /* QNBaseUpload.m in Sources */ = {isa = PBXBuildFile; fileRef = CC25135B244C7EB3003F4C65 /* QNBaseUpload.m */; };
@@ -589,6 +593,8 @@
589593
4551E55E24CE81DA00447285 /* QNInetAddress.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = QNInetAddress.m; sourceTree = "<group>"; };
590594
4551E56524D0065100447285 /* NSData+QNMD5.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSData+QNMD5.h"; sourceTree = "<group>"; };
591595
4551E56624D0065100447285 /* NSData+QNMD5.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSData+QNMD5.m"; sourceTree = "<group>"; };
596+
45CFDAF9292370720077890F /* QNApiType.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = QNApiType.h; sourceTree = "<group>"; };
597+
45CFDAFA292370720077890F /* QNApiType.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = QNApiType.m; sourceTree = "<group>"; };
592598
466E7AACB5F77BA0D4DE4070 /* Pods-QiniuSDK_MacTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-QiniuSDK_MacTests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-QiniuSDK_MacTests/Pods-QiniuSDK_MacTests.debug.xcconfig"; sourceTree = "<group>"; };
593599
6663602DA8CC701EA3B11F04 /* Pods-QiniuSDK_iOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-QiniuSDK_iOS.debug.xcconfig"; path = "Pods/Target Support Files/Pods-QiniuSDK_iOS/Pods-QiniuSDK_iOS.debug.xcconfig"; sourceTree = "<group>"; };
594600
69B20FB4731F84969BC5AEBE /* Pods-QiniuSDK_Mac.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-QiniuSDK_Mac.debug.xcconfig"; path = "Pods/Target Support Files/Pods-QiniuSDK_Mac/Pods-QiniuSDK_Mac.debug.xcconfig"; sourceTree = "<group>"; };
@@ -977,6 +983,8 @@
977983
31494475244852BA00386F16 /* QNFixedZone.m */,
978984
31D84468254017BD005C0222 /* QNErrorCode.h */,
979985
31D84469254017BD005C0222 /* QNErrorCode.m */,
986+
45CFDAF9292370720077890F /* QNApiType.h */,
987+
45CFDAFA292370720077890F /* QNApiType.m */,
980988
);
981989
path = Common;
982990
sourceTree = "<group>";
@@ -1144,6 +1152,7 @@
11441152
318E2F212552AE2F004EDE8C /* QNResponseInfo.h in Headers */,
11451153
31C9D2552717E106006B9433 /* QNCFHttpThreadPool.h in Headers */,
11461154
318E2F1F2552AE2F004EDE8C /* QNInetAddress.h in Headers */,
1155+
45CFDAFC292370720077890F /* QNApiType.h in Headers */,
11471156
3188D4D326490A0C00183CAE /* QNUploadInfo.h in Headers */,
11481157
318E2F122552AE2B004EDE8C /* QNUploadSystemClient.h in Headers */,
11491158
318E2F042552AE05004EDE8C /* QNUrlSafeBase64.h in Headers */,
@@ -1191,6 +1200,7 @@
11911200
31F553972456F2F3000B66AD /* QNUrlSafeBase64.h in Headers */,
11921201
31F553A62456F2F3000B66AD /* QNFile.h in Headers */,
11931202
31FE6A0B25A8320200C02B27 /* QNConnectChecker.h in Headers */,
1203+
45CFDAFB292370720077890F /* QNApiType.h in Headers */,
11941204
31F553CB24596C3D000B66AD /* QNHttpRegionRequest.h in Headers */,
11951205
31F5539A2456F2F3000B66AD /* QNVersion.h in Headers */,
11961206
31BAA27A243DB83700B7E883 /* NSURLRequest+QNRequest.h in Headers */,
@@ -1368,13 +1378,14 @@
13681378
};
13691379
DF2CDE0919DAC05500CE01FB = {
13701380
CreatedOnToolsVersion = 6.0.1;
1381+
ProvisioningStyle = Manual;
13711382
};
13721383
DF2CDE1919DAC08400CE01FB = {
13731384
CreatedOnToolsVersion = 6.0.1;
13741385
};
13751386
DF2CDE2319DAC08400CE01FB = {
13761387
CreatedOnToolsVersion = 6.0.1;
1377-
DevelopmentTeam = 5G98NLC322;
1388+
ProvisioningStyle = Manual;
13781389
};
13791390
};
13801391
};
@@ -1564,6 +1575,7 @@
15641575
3149A1E02462A57400A2A15B /* QNUploadServer.m in Sources */,
15651576
31F553C12457FFB0000B66AD /* QNPipeline.m in Sources */,
15661577
4551E56024CE81DA00447285 /* QNInetAddress.m in Sources */,
1578+
45CFDAFD292370720077890F /* QNApiType.m in Sources */,
15671579
CC25135D244C7EB3003F4C65 /* QNBaseUpload.m in Sources */,
15681580
DF437CDA1B2429E10099587B /* QNUpToken.m in Sources */,
15691581
3177B70625A30C4500C56293 /* QNSingleFlight.m in Sources */,
@@ -1688,6 +1700,7 @@
16881700
3149A1E12462A57400A2A15B /* QNUploadServer.m in Sources */,
16891701
4551E56124CE81DA00447285 /* QNInetAddress.m in Sources */,
16901702
31F553AF2457D2E5000B66AD /* QNALAssetFile.m in Sources */,
1703+
45CFDAFE292370720077890F /* QNApiType.m in Sources */,
16911704
313B380F2575E49400FBB57B /* QNPartsUploadPerformer.m in Sources */,
16921705
DF437CDC1B2429E10099587B /* QNUpToken.m in Sources */,
16931706
3177B70725A30C4500C56293 /* QNSingleFlight.m in Sources */,
@@ -1823,8 +1836,8 @@
18231836
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
18241837
GCC_WARN_UNUSED_FUNCTION = YES;
18251838
GCC_WARN_UNUSED_VARIABLE = YES;
1826-
IPHONEOS_DEPLOYMENT_TARGET = 7.0;
1827-
MACOSX_DEPLOYMENT_TARGET = 10.9;
1839+
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
1840+
MACOSX_DEPLOYMENT_TARGET = 10.14;
18281841
MTL_ENABLE_DEBUG_INFO = YES;
18291842
ONLY_ACTIVE_ARCH = YES;
18301843
OTHER_LDFLAGS = "$(inherited)";
@@ -1872,8 +1885,8 @@
18721885
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
18731886
GCC_WARN_UNUSED_FUNCTION = YES;
18741887
GCC_WARN_UNUSED_VARIABLE = YES;
1875-
IPHONEOS_DEPLOYMENT_TARGET = 7.0;
1876-
MACOSX_DEPLOYMENT_TARGET = 10.9;
1888+
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
1889+
MACOSX_DEPLOYMENT_TARGET = 10.14;
18771890
MTL_ENABLE_DEBUG_INFO = NO;
18781891
OTHER_LDFLAGS = "$(inherited)";
18791892
SDKROOT = macosx;
@@ -1889,6 +1902,9 @@
18891902
"EXCLUDED_ARCHS[sdk=*]" = arm64;
18901903
GCC_DYNAMIC_NO_PIC = NO;
18911904
GCC_OPTIMIZATION_LEVEL = 0;
1905+
GENERATE_PKGINFO_FILE = YES;
1906+
INFOPLIST_FILE = "";
1907+
MACOSX_DEPLOYMENT_TARGET = 10.14;
18921908
PRODUCT_NAME = QiniuSDK_Mac;
18931909
};
18941910
name = Debug;
@@ -1901,6 +1917,9 @@
19011917
COPY_PHASE_STRIP = YES;
19021918
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
19031919
"EXCLUDED_ARCHS[sdk=*]" = arm64;
1920+
GENERATE_PKGINFO_FILE = YES;
1921+
INFOPLIST_FILE = "";
1922+
MACOSX_DEPLOYMENT_TARGET = 10.14;
19041923
PRODUCT_NAME = QiniuSDK_Mac;
19051924
};
19061925
name = Release;
@@ -1909,22 +1928,36 @@
19091928
isa = XCBuildConfiguration;
19101929
baseConfigurationReference = 466E7AACB5F77BA0D4DE4070 /* Pods-QiniuSDK_MacTests.debug.xcconfig */;
19111930
buildSettings = {
1931+
CODE_SIGN_IDENTITY = "Apple Development";
1932+
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "-";
1933+
CODE_SIGN_STYLE = Manual;
19121934
COMBINE_HIDPI_IMAGES = YES;
19131935
COPY_PHASE_STRIP = NO;
1936+
DEVELOPMENT_TEAM = "";
19141937
GCC_DYNAMIC_NO_PIC = NO;
19151938
GCC_OPTIMIZATION_LEVEL = 0;
1939+
GENERATE_INFOPLIST_FILE = YES;
1940+
GENERATE_PKGINFO_FILE = YES;
19161941
PRODUCT_NAME = QiniuSDK_MacTests;
1942+
PROVISIONING_PROFILE_SPECIFIER = "";
19171943
};
19181944
name = Debug;
19191945
};
19201946
DFBBFBD41CFC5F68003F7CD8 /* Release */ = {
19211947
isa = XCBuildConfiguration;
19221948
baseConfigurationReference = B62E937FF4E75CDD482C35E8 /* Pods-QiniuSDK_MacTests.release.xcconfig */;
19231949
buildSettings = {
1950+
CODE_SIGN_IDENTITY = "Apple Development";
1951+
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "-";
1952+
CODE_SIGN_STYLE = Manual;
19241953
COMBINE_HIDPI_IMAGES = YES;
19251954
COPY_PHASE_STRIP = YES;
19261955
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
1956+
DEVELOPMENT_TEAM = "";
1957+
GENERATE_INFOPLIST_FILE = YES;
1958+
GENERATE_PKGINFO_FILE = YES;
19271959
PRODUCT_NAME = QiniuSDK_MacTests;
1960+
PROVISIONING_PROFILE_SPECIFIER = "";
19281961
};
19291962
name = Release;
19301963
};
@@ -1935,6 +1968,7 @@
19351968
COPY_PHASE_STRIP = NO;
19361969
GCC_DYNAMIC_NO_PIC = NO;
19371970
GCC_OPTIMIZATION_LEVEL = 0;
1971+
GENERATE_PKGINFO_FILE = YES;
19381972
PRODUCT_NAME = QiniuSDK_iOS;
19391973
SDKROOT = iphoneos;
19401974
};
@@ -1946,6 +1980,7 @@
19461980
buildSettings = {
19471981
COPY_PHASE_STRIP = YES;
19481982
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
1983+
GENERATE_PKGINFO_FILE = YES;
19491984
PRODUCT_NAME = QiniuSDK_iOS;
19501985
SDKROOT = iphoneos;
19511986
};
@@ -1955,11 +1990,17 @@
19551990
isa = XCBuildConfiguration;
19561991
baseConfigurationReference = 6DD894AA2A19370381AD4201 /* Pods-QiniuSDK_iOSTests.debug.xcconfig */;
19571992
buildSettings = {
1993+
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development";
1994+
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "-";
1995+
CODE_SIGN_STYLE = Manual;
19581996
COPY_PHASE_STRIP = NO;
1959-
DEVELOPMENT_TEAM = 5G98NLC322;
1997+
DEVELOPMENT_TEAM = "";
19601998
GCC_DYNAMIC_NO_PIC = NO;
19611999
GCC_OPTIMIZATION_LEVEL = 0;
2000+
GENERATE_INFOPLIST_FILE = YES;
2001+
GENERATE_PKGINFO_FILE = YES;
19622002
PRODUCT_NAME = QiniuSDK_iOSTests;
2003+
PROVISIONING_PROFILE_SPECIFIER = "";
19632004
SDKROOT = iphoneos;
19642005
};
19652006
name = Debug;
@@ -1968,10 +2009,16 @@
19682009
isa = XCBuildConfiguration;
19692010
baseConfigurationReference = 135958056D8FF4295F3D9AB0 /* Pods-QiniuSDK_iOSTests.release.xcconfig */;
19702011
buildSettings = {
2012+
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "Apple Development";
2013+
"CODE_SIGN_IDENTITY[sdk=macosx*]" = "-";
2014+
CODE_SIGN_STYLE = Manual;
19712015
COPY_PHASE_STRIP = YES;
19722016
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
1973-
DEVELOPMENT_TEAM = 5G98NLC322;
2017+
DEVELOPMENT_TEAM = "";
2018+
GENERATE_INFOPLIST_FILE = YES;
2019+
GENERATE_PKGINFO_FILE = YES;
19742020
PRODUCT_NAME = QiniuSDK_iOSTests;
2021+
PROVISIONING_PROFILE_SPECIFIER = "";
19752022
SDKROOT = iphoneos;
19762023
};
19772024
name = Release;

QiniuSDK/Common/QNApiType.h

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
//
2+
// QNApiType.h
3+
// QiniuSDK
4+
//
5+
// Created by yangsen on 2022/11/15.
6+
// Copyright © 2022 Qiniu. All rights reserved.
7+
//
8+
9+
#import <Foundation/Foundation.h>
10+
11+
NS_ASSUME_NONNULL_BEGIN
12+
13+
typedef NS_ENUM(NSUInteger, QNActionType) {
14+
QNActionTypeNone,
15+
QNActionTypeUploadByForm,
16+
QNActionTypeUploadByResumeV1,
17+
QNActionTypeUploadByResumeV2,
18+
};
19+
20+
@interface QNApiType : NSObject
21+
22+
+ (NSString *)actionTypeString:(QNActionType)actionType;
23+
24+
+ (NSArray <NSString *> *)apisWithActionType:(QNActionType)actionType;
25+
26+
@end
27+
28+
NS_ASSUME_NONNULL_END

QiniuSDK/Common/QNApiType.m

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
//
2+
// QNApiType.m
3+
// QiniuSDK
4+
//
5+
// Created by yangsen on 2022/11/15.
6+
// Copyright © 2022 Qiniu. All rights reserved.
7+
//
8+
9+
#import "QNApiType.h"
10+
11+
@implementation QNApiType
12+
13+
+ (NSString *)actionTypeString:(QNActionType)actionType {
14+
NSString *type = @"";
15+
switch (actionType) {
16+
case QNActionTypeUploadByForm:
17+
type = @"form";
18+
break;
19+
case QNActionTypeUploadByResumeV1:
20+
type = @"resume-v1";
21+
break;
22+
case QNActionTypeUploadByResumeV2:
23+
type = @"resume-v2";
24+
break;
25+
default:
26+
break;
27+
}
28+
return type;
29+
}
30+
31+
+ (NSArray <NSString *> *)apisWithActionType:(QNActionType)actionType {
32+
NSArray *apis = nil;
33+
switch (actionType) {
34+
case QNActionTypeUploadByForm:
35+
apis = @[@"up.formupload"];
36+
break;
37+
case QNActionTypeUploadByResumeV1:
38+
apis = @[@"up.mkblk", @"up.bput", @"up.mkfile"];
39+
break;
40+
case QNActionTypeUploadByResumeV2:
41+
apis = @[@"up.initparts", @"up.uploadpart", @"up.completeparts"];
42+
break;
43+
default:
44+
break;
45+
}
46+
return apis;
47+
}
48+
49+
@end

QiniuSDK/Common/QNAutoZone.m

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -128,15 +128,18 @@ - (instancetype)init{
128128
return self;
129129
}
130130

131-
- (QNZonesInfo *)getZonesInfoWithToken:(QNUpToken *)token {
131+
- (QNZonesInfo *)getZonesInfoWithToken:(QNUpToken * _Nullable)token
132+
actionType:(QNActionType)actionType {
133+
132134
if (token == nil) return nil;
133-
QNZonesInfo *zonesInfo = [[QNAutoZoneCache share] cacheForKey:[token index]];
135+
NSString *cacheKey = [NSString stringWithFormat:@"%@%@", token.index, [QNApiType actionTypeString:actionType]] ;
136+
QNZonesInfo *zonesInfo = [[QNAutoZoneCache share] cacheForKey:cacheKey];
134137
zonesInfo = [zonesInfo copy];
135138
return zonesInfo;
136139
}
137140

138-
- (void)preQuery:(QNUpToken *)token on:(QNPrequeryReturn)ret {
139-
141+
- (void)preQuery:(QNUpToken *)token actionType:(QNActionType)actionType on:(QNPrequeryReturn)ret {
142+
140143
if (token == nil || ![token isValid]) {
141144
ret(-1, [QNResponseInfo responseInfoWithInvalidToken:@"invalid token"], nil);
142145
return;
@@ -145,7 +148,7 @@ - (void)preQuery:(QNUpToken *)token on:(QNPrequeryReturn)ret {
145148
QNUploadRegionRequestMetrics *cacheMetrics = [QNUploadRegionRequestMetrics emptyMetrics];
146149
[cacheMetrics start];
147150

148-
NSString *cacheKey = token.index;
151+
NSString *cacheKey = [NSString stringWithFormat:@"%@%@", token.index, [QNApiType actionTypeString:actionType]] ;
149152
QNZonesInfo *zonesInfo = [[QNAutoZoneCache share] zonesInfoForKey:cacheKey];
150153

151154
// 临时的 zonesInfo 仅能使用一次
@@ -182,7 +185,7 @@ - (void)preQuery:(QNUpToken *)token on:(QNPrequeryReturn)ret {
182185
QNUploadRegionRequestMetrics *metrics = [(QNUCQuerySingleFlightValue *)value metrics];
183186

184187
if (responseInfo && responseInfo.isOK) {
185-
QNZonesInfo *zonesInfo = [QNZonesInfo infoWithDictionary:response];
188+
QNZonesInfo *zonesInfo = [QNZonesInfo infoWithDictionary:response actionType:actionType];
186189
if ([zonesInfo isValid]) {
187190
[[QNAutoZoneCache share] cache:zonesInfo forKey:cacheKey];
188191
ret(0, responseInfo, metrics);

QiniuSDK/Common/QNFixedZone.m

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -160,12 +160,7 @@ - (instancetype)initWithUpDomainList:(NSArray<NSString *> *)upList
160160
return self;
161161
}
162162

163-
- (void)preQuery:(QNUpToken *)token
164-
on:(QNPrequeryReturn)ret {
165-
ret(0, nil, nil);
166-
}
167-
168-
- (QNZonesInfo *)getZonesInfoWithToken:(QNUpToken *)token {
163+
- (QNZonesInfo *)getZonesInfoWithToken:(QNUpToken *)token actionType:(QNActionType)actionType {
169164
return self.zonesInfo;
170165
}
171166

QiniuSDK/Common/QNZone.h

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
// Copyright © 2020 Qiniu. All rights reserved.
77
//
88

9-
#import <Foundation/Foundation.h>
9+
#import "QNApiType.h"
1010

1111
NS_ASSUME_NONNULL_BEGIN
1212

@@ -16,16 +16,29 @@ typedef void (^QNPrequeryReturn)(int code, QNResponseInfo * _Nullable httpRespon
1616

1717
@interface QNZone : NSObject
1818

19-
/// 根据token查询相关Zone信息【内部使用】
20-
/// @param token token信息
19+
/// 根据token查询相关 Zone 信息【内部使用】
20+
/// @param token token 信息
2121
/// @param ret 查询回调
2222
- (void)preQuery:(QNUpToken * _Nullable)token
23-
on:(QNPrequeryReturn)ret;
23+
on:(QNPrequeryReturn _Nullable)ret;
24+
25+
/// 根据token查询相关 Zone 信息【内部使用】
26+
/// @param token token 信息
27+
/// @param actionType action 类型
28+
/// @param ret 查询回调
29+
- (void)preQuery:(QNUpToken * _Nullable)token
30+
actionType:(QNActionType)actionType
31+
on:(QNPrequeryReturn _Nullable)ret;
2432

2533
/// 根据token获取ZonesInfo 【内部使用】
2634
/// @param token token信息
2735
- (QNZonesInfo *)getZonesInfoWithToken:(QNUpToken * _Nullable)token;
2836

37+
/// 获取ZonesInfo 【内部使用】
38+
/// @param token token 信息
39+
/// @param actionType action 类型
40+
- (QNZonesInfo *)getZonesInfoWithToken:(QNUpToken * _Nullable)token actionType:(QNActionType)actionType;
41+
2942
@end
3043

3144
NS_ASSUME_NONNULL_END

0 commit comments

Comments
 (0)