Advertisement
nsocean

EEChecklistManager.m

Sep 4th, 2014
229
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. @implementation EEChecklistManager
  2.  
  3. #pragma mark - Singleton
  4. + (EEChecklistManager *)sharedMMChecklistManager
  5. {
  6.     static EEChecklistManager *sharedMMChecklistManager = nil;
  7.    
  8.     static dispatch_once_t onceToken;
  9.     dispatch_once(&onceToken, ^{
  10.        
  11.         sharedMMChecklistManager = [[self alloc]init];
  12.     });
  13.     return sharedMMChecklistManager;
  14. }
  15.  
  16. #pragma mark - Instance methods
  17. - (void)saveChecklist
  18. {
  19.     if (!self.swipedCellIdNumbers) {
  20.         self.swipedCellIdNumbers = [[NSMutableArray alloc]init];
  21.     }
  22.    
  23.     for (NSNumber *swipedCellIdNumber in self.swipedCellIdNumbers) {
  24.  
  25.     EEAppDelegate *appDelegate =
  26.     [[UIApplication sharedApplication] delegate];
  27.    
  28.     NSManagedObjectContext *context =
  29.     [appDelegate managedObjectContext];
  30.     NSManagedObject *cellIdNumber;
  31.    
  32.     cellIdNumber = [NSEntityDescription
  33.                   insertNewObjectForEntityForName:@"Cell_Id_Numbers"
  34.                   inManagedObjectContext:context];
  35.    
  36.     [cellIdNumber setValue:swipedCellIdNumber forKey:@"id_number"];
  37.    
  38.     NSError *error;
  39.     [context save:&error];
  40.        
  41.     }
  42. }
  43.  
  44. - (void)fetchSavedChecklist
  45. {
  46.     if (!self.swipedCellIdNumbers) {
  47.         self.swipedCellIdNumbers = [[NSMutableArray alloc]init];
  48.     }
  49.    
  50.    EEAppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
  51.    
  52.     NSManagedObjectContext *context =
  53.     [appDelegate managedObjectContext];
  54.    
  55.     NSEntityDescription *entityDesc =
  56.     [NSEntityDescription entityForName:@"Cell_Id_Numbers"
  57.                 inManagedObjectContext:context];
  58.    
  59.     NSFetchRequest *request = [[NSFetchRequest alloc] init];
  60.     [request setEntity:entityDesc];
  61.    
  62.     NSError *error;
  63.     NSArray *objects = [context executeFetchRequest:request
  64.                                               error:&error];
  65.    
  66.     if ([objects count] == 0) {
  67.         NSLog(@"No swiped cells persisted.");
  68.        
  69.     } else {
  70.        
  71.         //Lop through returned objects, create NSNumbers,
  72.         //and add NSNumbers to swipedCellRows
  73.         for (id object in objects) {
  74.            
  75.             NSManagedObject *managedObject = object;
  76.             NSNumber *finalCellIdNumber = [managedObject valueForKey:@"id_number"];
  77.             [self.swipedCellIdNumbers addObject:finalCellIdNumber];
  78.            
  79.         }
  80.        
  81.  
  82.     }
  83. }
  84.  
  85. @end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement