Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Jun 26th, 2012  |  syntax: None  |  size: 1.26 KB  |  hits: 8  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Core Data Migration: Attribute Mapping Value Expression
  2. @interface Migration_Policy_v1tov2 : NSEntityMigrationPolicy {
  3.  
  4.   NSMutableDictionary *namesToIDs;
  5. }
  6.  
  7. - (NSNumber *) itemIDForItemName:(NSString *)name;
  8. @end
  9.        
  10. @implementation Migration_Policy_v1tov2
  11.  
  12.  
  13.     - (BOOL)beginEntityMapping:(NSEntityMapping *)mapping manager:(NSMigrationManager *)manager error:(NSError **)error {
  14.  
  15.         namesToIDs = [NSMutableDictionary dictionaryWithObjectsAndKeys:[NSNumber numberWithInt:1],@"Apples",
  16.                       [NSNumber numberWithInt:2],@"Bananas",
  17.                       [NSNumber numberWithInt:3],@"Peaches",
  18.                       [NSNumber numberWithInt:4],@"Pears",
  19.                       [NSNumber numberWithInt:5],@"Beef",
  20.                       [NSNumber numberWithInt:6],@"Chicken",
  21.                       [NSNumber numberWithInt:7],@"Fish",
  22.                       [NSNumber numberWithInt:8],@"Asparagus",
  23.                       [NSNumber numberWithInt:9],@"Potato",
  24.                       [NSNumber numberWithInt:10],@"Carrot",nil];
  25.         return YES;
  26.     }
  27.     - (NSNumber *) itemIDForItemName:(NSString *)name {
  28.  
  29.         NSNumber *iD = [namesToIDs objectForKey:name];
  30.  
  31.         NSAssert(iD != nil,@"Error finding ID for item name:%@",name);
  32.  
  33.         return iD;
  34.     }
  35.     @end