NSMergeConflict
Конфликт слияния инкапсулирует конфликты, происходящие при попытке сохранить изменения в контексте управляемого объекта.
Существует две ситуации, в которых может произойти конфликт:
Между контекстом управляемого объекта и его кэшируемым состоянием в памяти в персистентном координаторе хранилища уровень.
В этом случае конфликт слияния имеет исходный объект и кэшируемый снимок, но никакой сохраненный снимок.
Между кэшируемым состоянием в персистентном координаторе хранилища и внешним хранилищем (файл, база данных, и т.д.).
В этом случае конфликт слияния имеет кэшируемый снимок и сохраненный снимок. Исходный объект также предоставлен как удобство, но он непосредственно не вовлечен в конфликт.
Словари снимка включают значения для всех атрибутов и к - отношений, но не к - много отношений. Значения отношения NSManagedObjectID ссылки. К - много отношений нужно вытянуть от персистентного хранилища по мере необходимости.
Оператор импорта
Swift
import CoreData
Objective C
@import CoreData;
Доступность
Доступный в OS X v10.7 и позже.
-
init (source:newVersion:oldVersion:cachedSnapshot:persistedSnapshot:) - initWithSource:newVersion:oldVersion:cachedSnapshot:persistedSnapshot:Определяемый инициализаторИнициализирует конфликт слияния.
Объявление
Swift
init(sourcesrcObject: NSManagedObject, newVersionnewvers: Int, oldVersionoldvers: Int, cachedSnapshotcachesnap: [NSObject : AnyObject], persistedSnapshotpersnap: [NSObject : AnyObject]?)Objective C
- (instancetype)initWithSource:(NSManagedObject *)srcObjectnewVersion:(NSUInteger)newversoldVersion:(NSUInteger)oldverscachedSnapshot:(NSDictionary *)cachesnappersistedSnapshot:(NSDictionary *)persnapПараметры
srcObjectИсходный объект для конфликта.
newversНовый номер версии для изменения.
Значение 0 средних значений, объект был удален и соответствующий снимок,
nil.oldversСтарый номер версии для изменения.
cachesnapСловарь, содержащий значения
srcObjectсохраненный в персистентном координаторе хранилища уровень.persnapСловарь, содержащий значения
srcObjectсохраненный в персистентном хранилище.Возвращаемое значение
Объект конфликта слияния инициализируется с данными параметрами.
Оператор импорта
Objective C
@import CoreData;Swift
import CoreDataДоступность
Доступный в OS X v10.7 и позже.
-
sourceObject sourceObjectСвойствоИсходный объект для конфликта. (только для чтения)
Объявление
Swift
var sourceObject: NSManagedObject { get }Objective C
@property(readonly, retain) NSManagedObject *sourceObjectОператор импорта
Objective C
@import CoreData;Swift
import CoreDataДоступность
Доступный в OS X v10.7 и позже.
-
objectSnapshot objectSnapshotСвойствоСловарь, содержащий значения исходного объекта. (только для чтения)
Объявление
Swift
var objectSnapshot: [NSObject : AnyObject]? { get }Objective C
@property(readonly, retain) NSDictionary *objectSnapshotОператор импорта
Objective C
@import CoreData;Swift
import CoreDataДоступность
Доступный в OS X v10.7 и позже.
-
cachedSnapshot cachedSnapshotСвойствоСловарь, содержащий значения исходного объекта, считается в персистентном координаторе хранилища уровень. (только для чтения)
Объявление
Swift
var cachedSnapshot: [NSObject : AnyObject] { get }Objective C
@property(readonly, retain) NSDictionary *cachedSnapshotОператор импорта
Objective C
@import CoreData;Swift
import CoreDataДоступность
Доступный в OS X v10.7 и позже.
-
persistedSnapshot persistedSnapshotСвойствоСловарь, содержащий значения исходного объекта, сохранен в персистентном хранилище. (только для чтения)
Объявление
Swift
var persistedSnapshot: [NSObject : AnyObject]? { get }Objective C
@property(readonly, retain) NSDictionary *persistedSnapshotОператор импорта
Objective C
@import CoreData;Swift
import CoreDataДоступность
Доступный в OS X v10.7 и позже.
-
newVersionNumber newVersionNumberСвойствоНовый номер версии для изменения. (только для чтения)
Объявление
Swift
var newVersionNumber: Int { get }Objective C
@property(readonly) NSUInteger newVersionNumberОбсуждение
Новый номер версии 0 средних значений, объект был удален и соответствующий снимок,
nil.Оператор импорта
Objective C
@import CoreData;Swift
import CoreDataДоступность
Доступный в OS X v10.7 и позже.
-
oldVersionNumber oldVersionNumberСвойствоСтарый номер версии для изменения. (только для чтения)
Объявление
Swift
var oldVersionNumber: Int { get }Objective C
@property(readonly) NSUInteger oldVersionNumberОператор импорта
Objective C
@import CoreData;Swift
import CoreDataДоступность
Доступный в OS X v10.7 и позже.
