diff --git a/openbis-ipad/BisKit/Classes/CISDOBIpadServiceManager.h b/openbis-ipad/BisKit/Classes/CISDOBIpadServiceManager.h index d6d4a095b739c252736f136c7727bbf007a17786..00ab1fa6f7c71919d98f594cb923fa2cf22de83b 100644 --- a/openbis-ipad/BisKit/Classes/CISDOBIpadServiceManager.h +++ b/openbis-ipad/BisKit/Classes/CISDOBIpadServiceManager.h @@ -36,6 +36,7 @@ @property (readonly, strong) NSManagedObjectModel *managedObjectModel; @property (readonly, strong) NSPersistentStoreCoordinator *persistentStoreCoordinator; @property (readonly, strong) NSEntityDescription *ipadEntityDescription; +@property (readonly, strong) NSOperationQueue *queue; // Initialization diff --git a/openbis-ipad/BisKit/Classes/CISDOBIpadServiceManager.m b/openbis-ipad/BisKit/Classes/CISDOBIpadServiceManager.m index 57dcfe2672a0f7d65623c38042173d0e6e48419e..a65d243590e80768aa0136b741574f76d8069af3 100644 --- a/openbis-ipad/BisKit/Classes/CISDOBIpadServiceManager.m +++ b/openbis-ipad/BisKit/Classes/CISDOBIpadServiceManager.m @@ -99,6 +99,8 @@ static NSManagedObjectContext* GetMainThreadManagedObjectContext(NSURL* storeUrl _ipadEntityDescription = [NSEntityDescription entityForName: @"CISDOBIpadEntity" inManagedObjectContext: _managedObjectContext]; _managedObjectModel = [_ipadEntityDescription managedObjectModel]; + _queue = [[NSOperationQueue alloc] init]; + return self; } @@ -110,8 +112,7 @@ static NSManagedObjectContext* GetMainThreadManagedObjectContext(NSURL* storeUrl [synchronizer run]; [synchronizer performSelectorOnMainThread: @selector(notifyCallOfResult:) withObject: nil waitUntilDone: NO]; }; - NSBlockOperation *blockOp = [NSBlockOperation blockOperationWithBlock: syncBlock]; - [blockOp start]; + [_queue addOperationWithBlock: syncBlock]; } - (CISDOBIpadServiceManagerCall *)managerCallWrappingServiceCall:(CISDOBAsyncCall *)serviceCall pruning:(BOOL)prune