Created
January 28, 2015 05:04
-
-
Save bradya/699e0a6250e0a4e2bc41 to your computer and use it in GitHub Desktop.
Clearing queues
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
+ (void)pauseAndEmptyQueues | |
{ | |
NSOperationQueue *mainOperationQueue = [[SLKDataRepository sharedRepository] mainOperationQueue]; | |
NSOperationQueue *backgroundOperationQueue = [[SLKDataRepository sharedRepository] backgroundOperationQueue]; | |
NSOperationQueue *readOperationQueue = [[SLKDataRepository sharedRepository] readOperationQueue]; | |
[mainOperationQueue setSuspended:YES]; | |
[backgroundOperationQueue setSuspended:YES]; | |
[readOperationQueue setSuspended:YES]; | |
[mainOperationQueue cancelAllOperations]; | |
[backgroundOperationQueue cancelAllOperations]; | |
[readOperationQueue cancelAllOperations]; | |
[mainOperationQueue waitUntilAllOperationsAreFinished]; | |
[backgroundOperationQueue waitUntilAllOperationsAreFinished]; | |
[readOperationQueue waitUntilAllOperationsAreFinished]; | |
} | |
+ (void)restartQueues | |
{ | |
NSOperationQueue *mainOperationQueue = [[SLKDataRepository sharedRepository] mainOperationQueue]; | |
NSOperationQueue *backgroundOperationQueue = [[SLKDataRepository sharedRepository] backgroundOperationQueue]; | |
NSOperationQueue *readOperationQueue = [[SLKDataRepository sharedRepository] readOperationQueue]; | |
[mainOperationQueue setSuspended:NO]; | |
[backgroundOperationQueue setSuspended:NO]; | |
[readOperationQueue setSuspended:NO]; | |
} | |
+ (BOOL)addPersistentStoreForAccount:(SLKAccount *)account coordinator:(NSPersistentStoreCoordinator *)coordinator | |
{ | |
[self pauseAndEmptyQueues]; | |
BOOL result = [self configureStoreForAccount:account coordinator:coordinator]; | |
[self restartQueues]; | |
return result; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment