Skip to content

Commit f43a96e

Browse files
Add better, more flexible APIs for SDK initialization.
Our current SDK initialization is lackluster in that it's split across multiple classes, files, and method calls. This PR hopes to unify some of these initialization settings int o a single 'configuration' class that can be easily used to intialize parse in a much cleaner way, especially as we add even more initialization options.
1 parent 305cae4 commit f43a96e

12 files changed

+590
-76
lines changed

Parse.xcodeproj/project.pbxproj

+28
Original file line numberDiff line numberDiff line change
@@ -1473,6 +1473,8 @@
14731473
F515355A1B57573700C49F56 /* PFDefaultACLController.h in Headers */ = {isa = PBXBuildFile; fileRef = F51535571B57573700C49F56 /* PFDefaultACLController.h */; };
14741474
F515355B1B57573700C49F56 /* PFDefaultACLController.m in Sources */ = {isa = PBXBuildFile; fileRef = F51535581B57573700C49F56 /* PFDefaultACLController.m */; };
14751475
F515355C1B57573700C49F56 /* PFDefaultACLController.m in Sources */ = {isa = PBXBuildFile; fileRef = F51535581B57573700C49F56 /* PFDefaultACLController.m */; };
1476+
F5198B001C1B74B700CC6D61 /* ParseClientConfigurationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F5198AF81C1B744200CC6D61 /* ParseClientConfigurationTests.m */; };
1477+
F5198B011C1B74B800CC6D61 /* ParseClientConfigurationTests.m in Sources */ = {isa = PBXBuildFile; fileRef = F5198AF81C1B744200CC6D61 /* ParseClientConfigurationTests.m */; };
14761478
F51D06341B792CF10044539E /* PFSQLiteDatabaseController.h in Headers */ = {isa = PBXBuildFile; fileRef = F51D06321B792CF10044539E /* PFSQLiteDatabaseController.h */; };
14771479
F51D06351B792CF10044539E /* PFSQLiteDatabaseController.m in Sources */ = {isa = PBXBuildFile; fileRef = F51D06331B792CF10044539E /* PFSQLiteDatabaseController.m */; };
14781480
F51D06371B793A110044539E /* PFSQLiteDatabase_Private.h in Headers */ = {isa = PBXBuildFile; fileRef = F51D06361B793A110044539E /* PFSQLiteDatabase_Private.h */; };
@@ -1551,6 +1553,14 @@
15511553
F5B0C4F51BA248F7000AB0D5 /* PFFileDataStream.h in Headers */ = {isa = PBXBuildFile; fileRef = F5B0C4F21BA248F7000AB0D5 /* PFFileDataStream.h */; };
15521554
F5B0C4F61BA248F7000AB0D5 /* PFFileDataStream.m in Sources */ = {isa = PBXBuildFile; fileRef = F5B0C4F31BA248F7000AB0D5 /* PFFileDataStream.m */; };
15531555
F5B0C4F71BA248F7000AB0D5 /* PFFileDataStream.m in Sources */ = {isa = PBXBuildFile; fileRef = F5B0C4F31BA248F7000AB0D5 /* PFFileDataStream.m */; };
1556+
F5B64D8B1BFA646C0038F3CB /* ParseClientConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = F5B64D891BFA646C0038F3CB /* ParseClientConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };
1557+
F5B64D8C1BFA646C0038F3CB /* ParseClientConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = F5B64D891BFA646C0038F3CB /* ParseClientConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };
1558+
F5B64D8D1BFA646C0038F3CB /* ParseClientConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = F5B64D891BFA646C0038F3CB /* ParseClientConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };
1559+
F5B64D8E1BFA646C0038F3CB /* ParseClientConfiguration.h in Headers */ = {isa = PBXBuildFile; fileRef = F5B64D891BFA646C0038F3CB /* ParseClientConfiguration.h */; settings = {ATTRIBUTES = (Public, ); }; };
1560+
F5B64D8F1BFA646C0038F3CB /* ParseClientConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = F5B64D8A1BFA646C0038F3CB /* ParseClientConfiguration.m */; };
1561+
F5B64D901BFA646C0038F3CB /* ParseClientConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = F5B64D8A1BFA646C0038F3CB /* ParseClientConfiguration.m */; };
1562+
F5B64D911BFA646C0038F3CB /* ParseClientConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = F5B64D8A1BFA646C0038F3CB /* ParseClientConfiguration.m */; };
1563+
F5B64D921BFA646C0038F3CB /* ParseClientConfiguration.m in Sources */ = {isa = PBXBuildFile; fileRef = F5B64D8A1BFA646C0038F3CB /* ParseClientConfiguration.m */; };
15541564
F5C42CC71B34C22100C720D8 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 095ACE9913C69BF700566243 /* AudioToolbox.framework */; };
15551565
F5C42CD41B34F68C00C720D8 /* PFObjectSubclassingController.h in Headers */ = {isa = PBXBuildFile; fileRef = F5C42CD21B34F68C00C720D8 /* PFObjectSubclassingController.h */; };
15561566
F5C42CD51B34F68C00C720D8 /* PFObjectSubclassingController.h in Headers */ = {isa = PBXBuildFile; fileRef = F5C42CD21B34F68C00C720D8 /* PFObjectSubclassingController.h */; };
@@ -2191,11 +2201,13 @@
21912201
F51534FC1B571E9100C49F56 /* PFMutableACLState.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PFMutableACLState.m; sourceTree = "<group>"; };
21922202
F51535571B57573700C49F56 /* PFDefaultACLController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFDefaultACLController.h; sourceTree = "<group>"; };
21932203
F51535581B57573700C49F56 /* PFDefaultACLController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PFDefaultACLController.m; sourceTree = "<group>"; };
2204+
F5198AF81C1B744200CC6D61 /* ParseClientConfigurationTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ParseClientConfigurationTests.m; sourceTree = "<group>"; };
21942205
F51D06321B792CF10044539E /* PFSQLiteDatabaseController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFSQLiteDatabaseController.h; sourceTree = "<group>"; };
21952206
F51D06331B792CF10044539E /* PFSQLiteDatabaseController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PFSQLiteDatabaseController.m; sourceTree = "<group>"; };
21962207
F51D06361B793A110044539E /* PFSQLiteDatabase_Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFSQLiteDatabase_Private.h; sourceTree = "<group>"; };
21972208
F5556A141B66F36000410837 /* URLSessionTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = URLSessionTests.m; sourceTree = "<group>"; };
21982209
F5556A171B66F47900410837 /* PFURLSession_Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFURLSession_Private.h; sourceTree = "<group>"; };
2210+
F556643F1C10F37E006DEC12 /* ParseClientConfiguration_Private.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ParseClientConfiguration_Private.h; sourceTree = "<group>"; };
21992211
F55ABB531B4F39DA00A0ECD5 /* Parse-iOS.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Parse-iOS.xcconfig"; sourceTree = "<group>"; };
22002212
F55ABB541B4F39DA00A0ECD5 /* Parse-OSX.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Parse-OSX.xcconfig"; sourceTree = "<group>"; };
22012213
F55ABB591B4F39DA00A0ECD5 /* ParseUnitTests-iOS.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "ParseUnitTests-iOS.xcconfig"; sourceTree = "<group>"; };
@@ -2224,6 +2236,8 @@
22242236
F5B0B3141B44A21100F3EBC4 /* SystemConfiguration.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.4.sdk/System/Library/Frameworks/SystemConfiguration.framework; sourceTree = DEVELOPER_DIR; };
22252237
F5B0C4F21BA248F7000AB0D5 /* PFFileDataStream.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFFileDataStream.h; sourceTree = "<group>"; };
22262238
F5B0C4F31BA248F7000AB0D5 /* PFFileDataStream.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PFFileDataStream.m; sourceTree = "<group>"; };
2239+
F5B64D891BFA646C0038F3CB /* ParseClientConfiguration.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ParseClientConfiguration.h; sourceTree = "<group>"; };
2240+
F5B64D8A1BFA646C0038F3CB /* ParseClientConfiguration.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ParseClientConfiguration.m; sourceTree = "<group>"; };
22272241
F5C42CD21B34F68C00C720D8 /* PFObjectSubclassingController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFObjectSubclassingController.h; sourceTree = "<group>"; };
22282242
F5C42CD31B34F68C00C720D8 /* PFObjectSubclassingController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PFObjectSubclassingController.m; sourceTree = "<group>"; };
22292243
F5C42CD81B38761B00C720D8 /* PFObjectSubclassInfo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PFObjectSubclassInfo.h; sourceTree = "<group>"; };
@@ -2311,6 +2325,8 @@
23112325
09809FB81434F98C00EC3E74 /* Resources */,
23122326
09EEA12D1434FB1F00E3A3FA /* Parse.h */,
23132327
09EEA12E1434FB1F00E3A3FA /* Parse.m */,
2328+
F5B64D891BFA646C0038F3CB /* ParseClientConfiguration.h */,
2329+
F5B64D8A1BFA646C0038F3CB /* ParseClientConfiguration.m */,
23142330
64C47802147336C70092082F /* PFACL.h */,
23152331
64C47803147336C70092082F /* PFACL.m */,
23162332
9739513816B9D28E0010B884 /* PFAnalytics.h */,
@@ -2398,6 +2414,7 @@
23982414
81E2D5AF19DDAAB5009053A1 /* PFAssert.h */,
23992415
816AC9B81A3F48250031D94C /* PFApplication.h */,
24002416
816AC9B91A3F48250031D94C /* PFApplication.m */,
2417+
F556643F1C10F37E006DEC12 /* ParseClientConfiguration_Private.h */,
24012418
81068EEF1AE0845D00A34D13 /* PFEncoder.h */,
24022419
81068EF01AE0845D00A34D13 /* PFEncoder.m */,
24032420
919311D519AE5EB20008FF12 /* PFDecoder.h */,
@@ -2910,6 +2927,7 @@
29102927
814916051B66D44500EFD14F /* OfflineQueryControllerTests.m */,
29112928
814916061B66D44500EFD14F /* OfflineQueryLogicUnitTests.m */,
29122929
814916071B66D44500EFD14F /* OperationSetUnitTests.m */,
2930+
F5198AF81C1B744200CC6D61 /* ParseClientConfigurationTests.m */,
29132931
814916081B66D44500EFD14F /* ParseModuleUnitTests.m */,
29142932
814916091B66D44500EFD14F /* ParseSetupUnitTests.m */,
29152933
8149160A1B66D44500EFD14F /* PinningObjectStoreTests.m */,
@@ -4015,6 +4033,7 @@
40154033
810156501BB3832700D7C7BD /* PFSubclassing.h in Headers */,
40164034
810156511BB3832700D7C7BD /* PFObjectBatchController.h in Headers */,
40174035
810156521BB3832700D7C7BD /* PFAnalyticsUtilities.h in Headers */,
4036+
F5B64D8E1BFA646C0038F3CB /* ParseClientConfiguration.h in Headers */,
40184037
810156531BB3832700D7C7BD /* PFObject+Subclass.h in Headers */,
40194038
810156541BB3832700D7C7BD /* PFUserState_Private.h in Headers */,
40204039
810156551BB3832700D7C7BD /* PFAnonymousAuthenticationProvider.h in Headers */,
@@ -4219,6 +4238,7 @@
42194238
815F24091BD04D150054659F /* PFOfflineQueryController.h in Headers */,
42204239
815F240A1BD04D150054659F /* PFUser.h in Headers */,
42214240
815F240B1BD04D150054659F /* PFSQLiteDatabase_Private.h in Headers */,
4241+
F5B64D8D1BFA646C0038F3CB /* ParseClientConfiguration.h in Headers */,
42224242
815F240C1BD04D150054659F /* PFACLState.h in Headers */,
42234243
815F240D1BD04D150054659F /* PFCurrentConfigController.h in Headers */,
42244244
);
@@ -4232,6 +4252,7 @@
42324252
810B7D761A0291FF003C0909 /* PFMacros.h in Headers */,
42334253
815E764D1BDF168A00E1DF8E /* PFPersistenceController.h in Headers */,
42344254
81BBE1351A0062B800622646 /* PFRESTAnalyticsCommand.h in Headers */,
4255+
F5B64D8B1BFA646C0038F3CB /* ParseClientConfiguration.h in Headers */,
42354256
F5B0C4F41BA248F7000AB0D5 /* PFFileDataStream.h in Headers */,
42364257
81CB7FA01B1800E400DC601D /* PFPushController.h in Headers */,
42374258
815EE93C19FA56D20076FE5D /* PFHTTPURLRequestConstructor.h in Headers */,
@@ -4617,6 +4638,7 @@
46174638
F5556A191B66F47900410837 /* PFURLSession_Private.h in Headers */,
46184639
8148815A1B795CAC008763BF /* PFPropertyInfo_Private.h in Headers */,
46194640
81C9C9F819FEA89200D514C5 /* PFRESTPushCommand.h in Headers */,
4641+
F5B64D8C1BFA646C0038F3CB /* ParseClientConfiguration.h in Headers */,
46204642
81C7F49A1AF42187007B5418 /* PFFileState.h in Headers */,
46214643
81CB7F761B166FF500DC601D /* PFMutableObjectState.h in Headers */,
46224644
8166FCC51B503886003841A2 /* PFSQLiteStatement.h in Headers */,
@@ -5056,6 +5078,7 @@
50565078
810155371BB3832700D7C7BD /* PFFileStagingController.m in Sources */,
50575079
810155381BB3832700D7C7BD /* PFSQLiteDatabaseController.m in Sources */,
50585080
815E76541BDF168A00E1DF8E /* PFPersistenceController.m in Sources */,
5081+
F5B64D921BFA646C0038F3CB /* ParseClientConfiguration.m in Sources */,
50595082
810155391BB3832700D7C7BD /* PFFileManager.m in Sources */,
50605083
8101553B1BB3832700D7C7BD /* PFPinningEventuallyQueue.m in Sources */,
50615084
8101553C1BB3832700D7C7BD /* PFRESTQueryCommand.m in Sources */,
@@ -5262,6 +5285,7 @@
52625285
815F23261BD04D150054659F /* PFHTTPURLRequestConstructor.m in Sources */,
52635286
815F23271BD04D150054659F /* PFObjectUtilities.m in Sources */,
52645287
815F23281BD04D150054659F /* PFURLSessionJSONDataTaskDelegate.m in Sources */,
5288+
F5B64D911BFA646C0038F3CB /* ParseClientConfiguration.m in Sources */,
52655289
815F23291BD04D150054659F /* PFObjectEstimatedData.m in Sources */,
52665290
815F232A1BD04D150054659F /* PFConfig.m in Sources */,
52675291
815F232B1BD04D150054659F /* PFMultiProcessFileLockController.m in Sources */,
@@ -5378,6 +5402,7 @@
53785402
814916D31B66D44600EFD14F /* SessionUnitTests.m in Sources */,
53795403
81E0337E1B57441F00B25168 /* CLLocationManager+TestAdditions.m in Sources */,
53805404
814916471B66D44600EFD14F /* CommandUnitTests.m in Sources */,
5405+
F5198B001C1B74B700CC6D61 /* ParseClientConfigurationTests.m in Sources */,
53815406
814916611B66D44600EFD14F /* FieldOperationTests.m in Sources */,
53825407
814916A11B66D44600EFD14F /* ParseModuleUnitTests.m in Sources */,
53835408
814916951B66D44600EFD14F /* ObjectSubclassTests.m in Sources */,
@@ -5439,6 +5464,7 @@
54395464
8149168A1B66D44600EFD14F /* ObjectLocalIdStoreTests.m in Sources */,
54405465
814916A61B66D44600EFD14F /* PinningObjectStoreTests.m in Sources */,
54415466
814916501B66D44600EFD14F /* ConfigUnitTests.m in Sources */,
5467+
F5198B011C1B74B800CC6D61 /* ParseClientConfigurationTests.m in Sources */,
54425468
814916E01B66D44600EFD14F /* UserFileCodingLogicTests.m in Sources */,
54435469
814916D41B66D44600EFD14F /* SessionUnitTests.m in Sources */,
54445470
811AAF191B72D7E400B1AC1F /* ObjectFilePersistenceControllerTests.m in Sources */,
@@ -5558,6 +5584,7 @@
55585584
8166FC751B50376D003841A2 /* PFObjectController.m in Sources */,
55595585
81C3826A19CCAD7F0066284A /* PFCategoryLoader.m in Sources */,
55605586
8166FCDB1B503914003841A2 /* PFUserAuthenticationController.m in Sources */,
5587+
F5B64D8F1BFA646C0038F3CB /* ParseClientConfiguration.m in Sources */,
55615588
F5E8DE1B1B29100000EEA594 /* PFRelationState.m in Sources */,
55625589
8127148A1AE6F1270076AE8D /* ParseManager.m in Sources */,
55635590
81CB7F901B1795C000DC601D /* PFPushState.m in Sources */,
@@ -5710,6 +5737,7 @@
57105737
8166FC661B50375D003841A2 /* PFOperationSet.m in Sources */,
57115738
81C7F4B31AF42BD9007B5418 /* PFQueryState.m in Sources */,
57125739
81BF4ABF1B0BF64B00A3D75B /* PFCurrentConfigController.m in Sources */,
5740+
F5B64D901BFA646C0038F3CB /* ParseClientConfiguration.m in Sources */,
57135741
811214761B3E1CF10052741B /* PFObjectBatchController.m in Sources */,
57145742
81986CA51A412277007B8860 /* PFApplication.m in Sources */,
57155743
81A715A71B423A4100A504FC /* PFObjectUtilities.m in Sources */,

Parse/Internal/Commands/CommandRunner/URLSession/PFURLSessionCommandRunner.h

+9
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,15 @@ NS_ASSUME_NONNULL_BEGIN
1616
@interface PFURLSessionCommandRunner : NSObject <PFCommandRunning>
1717

1818
- (instancetype)init NS_UNAVAILABLE;
19+
- (instancetype)initWithDataSource:(id<PFInstallationIdentifierStoreProvider>)dataSource
20+
retryAttempts:(NSUInteger)retryAttempts
21+
applicationId:(NSString *)applicationId
22+
clientKey:(NSString *)clientKey;
23+
24+
+ (instancetype)commandRunnerWithDataSource:(id<PFInstallationIdentifierStoreProvider>)dataSource
25+
retryAttempts:(NSUInteger)retryAttempts
26+
applicationId:(NSString *)applicationId
27+
clientKey:(NSString *)clientKey;
1928

2029
@end
2130

Parse/Internal/Commands/CommandRunner/URLSession/PFURLSessionCommandRunner.m

+27-2
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@
3333
@interface PFURLSessionCommandRunner () <PFURLSessionDelegate>
3434

3535
@property (nonatomic, strong) NSNotificationCenter *notificationCenter;
36+
@property (nonatomic, assign) NSUInteger retryAttempts;
3637

3738
@end
3839

@@ -53,8 +54,20 @@ - (instancetype)init {
5354
- (instancetype)initWithDataSource:(id<PFInstallationIdentifierStoreProvider>)dataSource
5455
applicationId:(NSString *)applicationId
5556
clientKey:(NSString *)clientKey {
57+
return [self initWithDataSource:dataSource
58+
retryAttempts:PFCommandRunningDefaultMaxAttemptsCount
59+
applicationId:applicationId
60+
clientKey:clientKey];
61+
62+
}
63+
64+
- (instancetype)initWithDataSource:(id<PFInstallationIdentifierStoreProvider>)dataSource
65+
retryAttempts:(NSUInteger)retryAttempts
66+
applicationId:(NSString *)applicationId
67+
clientKey:(NSString *)clientKey {
5668
NSURLSessionConfiguration *configuration = [[self class] _urlSessionConfigurationForApplicationId:applicationId
5769
clientKey:clientKey];
70+
5871
PFURLSession *session = [PFURLSession sessionWithConfiguration:configuration delegate:self];
5972
PFCommandURLRequestConstructor *constructor = [PFCommandURLRequestConstructor constructorWithDataSource:dataSource];
6073
self = [self initWithDataSource:dataSource
@@ -63,6 +76,7 @@ - (instancetype)initWithDataSource:(id<PFInstallationIdentifierStoreProvider>)da
6376
notificationCenter:[NSNotificationCenter defaultCenter]];
6477
if (!self) return nil;
6578

79+
_retryAttempts = retryAttempts;
6680
_applicationId = [applicationId copy];
6781
_clientKey = [clientKey copy];
6882

@@ -77,6 +91,7 @@ - (instancetype)initWithDataSource:(id<PFInstallationIdentifierStoreProvider>)da
7791
if (!self) return nil;
7892

7993
_initialRetryDelay = PFCommandRunningDefaultRetryDelay;
94+
_retryAttempts = PFCommandRunningDefaultMaxAttemptsCount;
8095

8196
_requestConstructor = requestConstructor;
8297
_session = session;
@@ -91,6 +106,16 @@ + (instancetype)commandRunnerWithDataSource:(id<PFInstallationIdentifierStorePro
91106
return [[self alloc] initWithDataSource:dataSource applicationId:applicationId clientKey:clientKey];
92107
}
93108

109+
+ (instancetype)commandRunnerWithDataSource:(id<PFInstallationIdentifierStoreProvider>)dataSource
110+
retryAttempts:(NSUInteger)retryAttempts
111+
applicationId:(NSString *)applicationId
112+
clientKey:(NSString *)clientKey {
113+
return [[self alloc] initWithDataSource:dataSource
114+
retryAttempts:retryAttempts
115+
applicationId:applicationId
116+
clientKey:clientKey];
117+
}
118+
94119
///--------------------------------------
95120
#pragma mark - Dealloc
96121
///--------------------------------------
@@ -192,7 +217,7 @@ - (BFTask *)_performCommandRunningBlock:(nonnull id (^)())block
192217
return [self _performCommandRunningBlock:block
193218
withCancellationToken:cancellationToken
194219
delay:delay
195-
forAttempts:PFCommandRunningDefaultMaxAttemptsCount];
220+
forAttempts:_retryAttempts];
196221
}
197222

198223
- (BFTask *)_performCommandRunningBlock:(nonnull id (^)())block
@@ -209,7 +234,7 @@ - (BFTask *)_performCommandRunningBlock:(nonnull id (^)())block
209234
if ([[task.error userInfo][@"temporary"] boolValue] && attempts > 1) {
210235
PFLogError(PFLoggingTagCommon,
211236
@"Network connection failed. Making attempt %lu after sleeping for %f seconds.",
212-
(unsigned long)(PFCommandRunningDefaultMaxAttemptsCount - attempts + 1), (double)delay);
237+
(unsigned long)(_retryAttempts - attempts + 1), (double)delay);
213238

214239
return [[BFTask taskWithDelay:(int)(delay * 1000)] continueWithBlock:^id(BFTask *task) {
215240
return [self _performCommandRunningBlock:block

0 commit comments

Comments
 (0)