|
|
|
@ -26,7 +26,7 @@ static NSString *keychainDBPassAccount = @"TSDatabasePass";
|
|
|
|
|
|
|
|
|
|
@protocol OWSDatabaseConnectionDelegate <NSObject>
|
|
|
|
|
|
|
|
|
|
- (BOOL)isDatabaseInitialized;
|
|
|
|
|
- (BOOL)areSyncRegistrationsAreComplete;
|
|
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@ -80,7 +80,7 @@ static NSString *keychainDBPassAccount = @"TSDatabasePass";
|
|
|
|
|
{
|
|
|
|
|
id<OWSDatabaseConnectionDelegate> delegate = self.delegate;
|
|
|
|
|
OWSAssert(delegate);
|
|
|
|
|
OWSAssert(delegate.isDatabaseInitialized);
|
|
|
|
|
OWSAssert(delegate.areSyncRegistrationsAreComplete);
|
|
|
|
|
|
|
|
|
|
[super readWriteWithBlock:block];
|
|
|
|
|
}
|
|
|
|
@ -89,7 +89,7 @@ static NSString *keychainDBPassAccount = @"TSDatabasePass";
|
|
|
|
|
{
|
|
|
|
|
id<OWSDatabaseConnectionDelegate> delegate = self.delegate;
|
|
|
|
|
OWSAssert(delegate);
|
|
|
|
|
OWSAssert(delegate.isDatabaseInitialized);
|
|
|
|
|
OWSAssert(delegate.areSyncRegistrationsAreComplete);
|
|
|
|
|
|
|
|
|
|
[super asyncReadWriteWithBlock:block];
|
|
|
|
|
}
|
|
|
|
@ -99,7 +99,7 @@ static NSString *keychainDBPassAccount = @"TSDatabasePass";
|
|
|
|
|
{
|
|
|
|
|
id<OWSDatabaseConnectionDelegate> delegate = self.delegate;
|
|
|
|
|
OWSAssert(delegate);
|
|
|
|
|
OWSAssert(delegate.isDatabaseInitialized);
|
|
|
|
|
OWSAssert(delegate.areSyncRegistrationsAreComplete);
|
|
|
|
|
|
|
|
|
|
[super asyncReadWriteWithBlock:block completionBlock:completionBlock];
|
|
|
|
|
}
|
|
|
|
@ -110,7 +110,7 @@ static NSString *keychainDBPassAccount = @"TSDatabasePass";
|
|
|
|
|
{
|
|
|
|
|
id<OWSDatabaseConnectionDelegate> delegate = self.delegate;
|
|
|
|
|
OWSAssert(delegate);
|
|
|
|
|
OWSAssert(delegate.isDatabaseInitialized);
|
|
|
|
|
OWSAssert(delegate.areSyncRegistrationsAreComplete);
|
|
|
|
|
|
|
|
|
|
[super asyncReadWriteWithBlock:block completionQueue:completionQueue completionBlock:completionBlock];
|
|
|
|
|
}
|
|
|
|
@ -232,7 +232,7 @@ static NSString *keychainDBPassAccount = @"TSDatabasePass";
|
|
|
|
|
@interface OWSStorage () <OWSDatabaseConnectionDelegate>
|
|
|
|
|
|
|
|
|
|
@property (atomic, nullable) YapDatabase *database;
|
|
|
|
|
@property (atomic) BOOL isDatabaseInitialized;
|
|
|
|
|
@property (atomic) BOOL areSyncRegistrationsAreComplete;
|
|
|
|
|
|
|
|
|
|
@end
|
|
|
|
|
|
|
|
|
@ -270,11 +270,11 @@ static NSString *keychainDBPassAccount = @"TSDatabasePass";
|
|
|
|
|
return self;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
- (void)setDatabaseInitialized
|
|
|
|
|
- (void)setSyncRegistrationsAreComplete
|
|
|
|
|
{
|
|
|
|
|
OWSAssert(!self.isDatabaseInitialized);
|
|
|
|
|
OWSAssert(!self.areSyncRegistrationsAreComplete);
|
|
|
|
|
|
|
|
|
|
self.isDatabaseInitialized = YES;
|
|
|
|
|
self.areSyncRegistrationsAreComplete = YES;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
- (BOOL)tryToLoadDatabase
|
|
|
|
|