Add support for obtaining a permanent managed object ID for the targetObject of an RKManagedObjectRequestOperation

This commit is contained in:
Blake Watters
2013-01-23 16:12:14 -05:00
parent cd877860fd
commit 2b84f667c1

View File

@@ -320,6 +320,11 @@ static NSURL *RKRelativeURLFromURLAndResponseDescriptors(NSURL *URL, NSArray *re
[super setTargetObject:targetObject];
if ([targetObject isKindOfClass:[NSManagedObject class]]) {
if ([[targetObject objectID] isTemporaryID]) {
NSError *error = nil;
BOOL success = [[targetObject managedObjectContext] obtainPermanentIDsForObjects:@[ targetObject ] error:&error];
if (! success) RKLogWarning(@"Failed to obtain permanent objectID for targetObject: %@ (%ld)", [error localizedDescription], (long) error.code);
}
self.targetObjectID = [targetObject objectID];
} else {
self.targetObjectID = nil;