Avoid blocking app launch

// FREEBIE
pull/1/head
Michael Kirk 9 years ago
parent f256617636
commit ff9729f421

@ -21,8 +21,8 @@ typedef void (^failedBlock)(NSError *error);
*
* @return registered or not
*/
+ (BOOL)isRegistered;
+ (void)runIfRegistered:(void (^)())block;
/**
* Returns registered number

@ -40,6 +40,11 @@
return [TSStorageManager localNumber] ? YES : NO;
}
+ (void)runIfRegistered:(void (^)())block
{
[[TSStorageManager sharedManager] runIfHasLocalNumber:block];
}
+ (void)didRegister {
TSAccountManager *sharedManager = [self sharedInstance];
__strong NSString *phoneNumber = sharedManager.phoneNumberAwaitingVerification;

@ -33,8 +33,8 @@
*
* @return E164 string of the registered phone number
*/
+ (NSString *)localNumber;
- (void)runIfHasLocalNumber:(void (^)())block;
+ (void)storeServerToken:(NSString *)authToken signalingKey:(NSString *)signalingKey;

@ -14,6 +14,17 @@
return [[self sharedManager] stringForKey:TSStorageRegisteredNumberKey inCollection:TSStorageUserAccountCollection];
}
- (void)runIfHasLocalNumber:(void (^)())block
{
[self.newDatabaseConnection asyncReadWithBlock:^(YapDatabaseReadTransaction *_Nonnull transaction) {
if ([transaction objectForKey:TSStorageRegisteredNumberKey inCollection:TSStorageUserAccountCollection]) {
block();
} else {
DDLogDebug(@"%@ Skipping block since no local number is registered", self.tag);
}
}];
}
+ (NSString *)signalingKey {
return [[self sharedManager] stringForKey:TSStorageServerSignalingKey inCollection:TSStorageUserAccountCollection];
}
@ -44,4 +55,16 @@
}];
}
#pragma mark - Logging
+ (NSString *)tag
{
return [NSString stringWithFormat:@"[%@]", self.class];
}
- (NSString *)tag
{
return self.class.tag;
}
@end

Loading…
Cancel
Save