NSMigrationManager
Экземпляры NSMigrationManager
выполните миграцию данных от одного персистентного хранилища до другого использования данного отображения модели.
Оператор импорта
Swift
import CoreData
Objective C
@import CoreData;
Доступность
Доступный в OS X v10.5 и позже.
-
Инициализирует менеджера по миграции экземпляр с данными исходными и целевыми моделями.
Объявление
Swift
init(sourceModel
sourceModel
: NSManagedObjectModel, destinationModeldestinationModel
: NSManagedObjectModel)Objective C
- (instancetype)initWithSourceModel:(NSManagedObjectModel *)
sourceModel
destinationModel:(NSManagedObjectModel *)destinationModel
Параметры
sourceModel
Исходная модель управляемого объекта для менеджера по миграции.
destinationModel
Целевая модель управляемого объекта для менеджера по миграции.
Возвращаемое значение
Экземпляр менеджера по миграции инициализировал для миграции данных в использующем хранилище
sourceModel
к использующему хранилищуdestinationModel
.Обсуждение
Вы указываете отображающуюся модель в методе миграции,
migrateStoreFromURL:type:options:withMappingModel:toDestinationURL:destinationType:destinationOptions:error:
.Специальные замечания
Это - определяемый инициализатор для
NSMigrationManager
.Несмотря на то, что проверка моделей выполняется во время
migrateStoreFromURL:type:options:withMappingModel:toDestinationURL:destinationType:destinationOptions:error:
, как сNSPersistentStoreCoordinator
как только модели добавляются к менеджеру по миграции, они являются неизменными и не могут быть изменены.Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
migrateStoreFromURL (_: type:options:withMappingModel:toDestinationURL:destinationType:destinationOptions:error:) - migrateStoreFromURL:type:options:withMappingModel:toDestinationURL:destinationType:destinationOptions:error:
Перемещает хранилища в данном источнике URL к хранилищу в данном целевом URL, выполняя все отображения, указанные в данном отображении модели.
Объявление
Swift
func migrateStoreFromURL(_
sourceURL
: NSURL, typesStoreType
: String, optionssOptions
: [NSObject : AnyObject]?, withMappingModelmappings
: NSMappingModel?, toDestinationURLdURL
: NSURL, destinationTypedStoreType
: String, destinationOptionsdOptions
: [NSObject : AnyObject]?, errorerror
: NSErrorPointer) -> BoolObjective C
- (BOOL)migrateStoreFromURL:(NSURL *)
sourceURL
type:(NSString *)sStoreType
options:(NSDictionary *)sOptions
withMappingModel:(NSMappingModel *)mappings
toDestinationURL:(NSURL *)dURL
destinationType:(NSString *)dStoreType
destinationOptions:(NSDictionary *)dOptions
error:(NSError **)error
Параметры
sourceURL
Расположение существующего персистентного хранилища. Хранилище должно существовать в этом URL.
sStoreType
Тип хранилища в
sourceURL
(см.NSPersistentStoreCoordinator
для возможных значений).sOptions
Словарь опций для источника (см.
NSPersistentStoreCoordinator
для возможных значений).mappings
Отображающаяся модель для использования для осуществления миграции.
dURL
Расположение целевого хранилища.
dStoreType
Тип хранилища в
dURL
(см.NSPersistentStoreCoordinator
для возможных значений).dOptions
Словарь опций для места назначения (см.
NSPersistentStoreCoordinator
для возможных значений).error
Если ошибка происходит во время проверки, или миграция, по возврату содержит
NSError
объект, описывающий проблему.Возвращаемое значение
YES
true
если миграция продолжается без ошибок во время проверок совместимости или миграции, иначеNO
false
.Обсуждение
Этот метод выполняет совместимость, проверяет исходные и целевые модели и отображающуюся модель.
Специальные замечания
Если хранилище не существует в целевом URL (
dURL
), каждый создается; иначе, миграция добавляет к существующему хранилищу.Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Сбрасывает таблицы ассоциации для миграции.
Объявление
Swift
func reset()
Objective C
- (void)reset
Специальные замечания
Этот метод не сбрасывает источник или целевые контексты.
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
Отменяет миграцию с данной ошибкой.
Объявление
Swift
func cancelMigrationWithError(_
error
: NSError)Objective C
- (void)cancelMigrationWithError:(NSError *)
error
Параметры
error
Ошибочный объект, описывающий причину, почему отменяется миграция.
Обсуждение
Можно вызвать этот метод отовсюду в процессе миграции для прерывания миграции. Вызов этого метода причины
migrateStoreFromURL:type:options:withMappingModel:toDestinationURL:destinationType:destinationOptions:error:
прерывать миграцию и возвратerror
— необходимо обеспечить надлежащую ошибку указать причину отмены.Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
migrationProgress migrationProgress
СвойствоЧисло между
0
и1
это указывает пропорцию полноты миграции. (только для чтения)Объявление
Swift
var migrationProgress: Float { get }
Objective C
@property(readonly) float migrationProgress
Специальные замечания
Если миграция не имеет место, это свойство
1
. Можно наблюдать это значение с помощью наблюдения значения ключа.Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
currentEntityMapping currentEntityMapping
СвойствоОбъект, отображающий в настоящее время быть обработанным. (только для чтения)
Объявление
Swift
var currentEntityMapping: NSEntityMapping { get }
Objective C
@property(readonly, strong) NSEntityMapping *currentEntityMapping
Обсуждение
Каждый объект обрабатывается в общей сложности три раза — создание экземпляра, создание отношения и проверка.
Специальные замечания
Можно наблюдать это значение с помощью наблюдения значения ключа.
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
associateSourceInstance (_: withDestinationInstance:forEntityMapping:) - associateSourceInstance:withDestinationInstance:forEntityMapping:
Связывает приведенный исходный пример с массивом целевых экземпляров для данного отображения свойства.
Объявление
Swift
func associateSourceInstance(_
sourceInstance
: NSManagedObject, withDestinationInstancedestinationInstance
: NSManagedObject, forEntityMappingentityMapping
: NSEntityMapping)Objective C
- (void)associateSourceInstance:(NSManagedObject *)
sourceInstance
withDestinationInstance:(NSManagedObject *)destinationInstance
forEntityMapping:(NSEntityMapping *)entityMapping
Параметры
sourceInstance
Исходный управляемый объект.
destinationInstance
Место назначения управляет объектом для
sourceInstance
.entityMapping
Объект, отображающийся для использования для партнера
sourceInstance
с объектом вdestinationInstances
.Обсуждение
Миграция данных выполняется как трехэтапный процесс (сначала создают данные, затем связывают данные, затем проверяют данные). Вы используете этот метод для соединения данных между источником и целевыми хранилищами, для получения возможности создания отношения или фиксации после этапа создания.
Этот метод вызывают в реализации по умолчанию
NSEntityMigrationPolicy
createDestinationInstancesForSourceInstance:entityMapping:manager:error:
метод.Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
destinationInstancesForEntityMappingNamed (_: sourceInstances:) - destinationInstancesForEntityMappingNamed:sourceInstances:
Возвращает экземпляры управляемого объекта, создаваемые в целевом хранилище для именованной сущности, отображающейся для данного массива исходных экземпляров.
Объявление
Swift
func destinationInstancesForEntityMappingNamed(_
mappingName
: String, sourceInstancessourceInstances
: [AnyObject]?) -> [AnyObject]Параметры
mappingName
Имя объекта, отображающегося в использовании.
sourceInstances
Массив управляемых объектов в исходном хранилище.
Возвращаемое значение
Называют массив, содержащий экземпляры управляемого объекта, создаваемые в целевом хранилище для отображения объекта
mappingName
дляsourceInstances
. ЕслиsourceInstances
nil
, возвращаются все целевые экземпляры, создаваемые указанным отображением свойства.Специальные замечания
Этот метод бросает
NSInvalidArgumentException
исключение, еслиmappingName
не допустимое имя отображения.Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
sourceInstancesForEntityMappingNamed (_: destinationInstances:) - sourceInstancesForEntityMappingNamed:destinationInstances:
Возвращается экземпляры управляемого объекта в исходном хранилище раньше создавали приведенный целевой пример для данного отображения свойства.
Объявление
Swift
func sourceInstancesForEntityMappingNamed(_
mappingName
: String, destinationInstancesdestinationInstances
: [AnyObject]?) -> [AnyObject]Параметры
mappingName
Имя объекта, отображающегося в использовании.
destinationInstances
Массив управляемых объектов в целевом хранилище.
Возвращаемое значение
Массив, содержащий экземпляры управляемого объекта в исходном хранилище раньше, создавал
destinationInstances
использование отображения объекта называютmappingName
. ЕслиdestinationInstances
nil
, все исходные экземпляры, используемые для создания целевого экземпляра для этого отображения свойства, возвращаются.Специальные замечания
Этот метод бросает
NSInvalidArgumentException
исключение, еслиmappingName
не допустимое имя отображения.Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
mappingModel mappingModel
СвойствоОтображающаяся модель для получателя. (только для чтения)
Объявление
Swift
var mappingModel: NSMappingModel { get }
Objective C
@property(readonly, strong) NSMappingModel *mappingModel
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
sourceModel sourceModel
СвойствоИсходная модель для получателя. (только для чтения)
Объявление
Swift
var sourceModel: NSManagedObjectModel { get }
Objective C
@property(readonly, strong) NSManagedObjectModel *sourceModel
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
destinationModel destinationModel
СвойствоЦелевая модель для получателя. (только для чтения)
Объявление
Swift
var destinationModel: NSManagedObjectModel { get }
Objective C
@property(readonly, strong) NSManagedObjectModel *destinationModel
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
Возвращает описание объекта для исходного объекта данного отображения объекта.
Объявление
Swift
func sourceEntityForEntityMapping(_
mEntity
: NSEntityMapping) -> NSEntityDescription?Objective C
- (NSEntityDescription *)sourceEntityForEntityMapping:(NSEntityMapping *)
mEntity
Параметры
mEntity
Отображение объекта.
Возвращаемое значение
Описание объекта для исходного объекта
mEntity
.Обсуждение
Отображения объекта не хранят фактические объекты описания, а скорее имя и информацию о версии объекта.
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Возвращает описание объекта для целевого объекта данного отображения объекта.
Объявление
Swift
func destinationEntityForEntityMapping(_
mEntity
: NSEntityMapping) -> NSEntityDescription?Objective C
- (NSEntityDescription *)destinationEntityForEntityMapping:(NSEntityMapping *)
mEntity
Параметры
mEntity
Отображение объекта.
Возвращаемое значение
Описание объекта для целевого объекта
mEntity
.Обсуждение
Отображения объекта не хранят фактические объекты описания, а скорее имя и информацию о версии объекта.
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
sourceContext sourceContext
СвойствоКонтекст управляемого объекта получатель использует для чтения источника персистентное хранилище. (только для чтения)
Объявление
Swift
var sourceContext: NSManagedObjectContext { get }
Objective C
@property(readonly, strong) NSManagedObjectContext *sourceContext
Обсуждение
Этот контекст создается по требованию как часть инициализации Базовых Стеков данных, используемых для миграции.
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
destinationContext destinationContext
СвойствоКонтекст управляемого объекта получатель использует для записи целевого персистентного хранилища. (только для чтения)
Объявление
Swift
var destinationContext: NSManagedObjectContext { get }
Objective C
@property(readonly, strong) NSManagedObjectContext *destinationContext
Обсуждение
Этот контекст создается по требованию как часть инициализации Базовых Стеков данных, используемых для миграции.
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
См. также
-
Пользовательская информация для получателя.
Объявление
Swift
var userInfo: [NSObject : AnyObject]?
Objective C
@property(nonatomic, strong) NSDictionary *userInfo
Обсуждение
Можно использовать пользовательский информационный словарь для помощи настройке процесса миграции.
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.5 и позже.
-
Булево значение, указывающее, пытается ли получатель использовать хранилище определенный менеджер по миграции для выполнения миграции.
Объявление
Swift
var usesStoreSpecificMigrationManager: Bool
Objective C
@property BOOL usesStoreSpecificMigrationManager
Возвращаемое значение
YES
true
если получатель использует специфичного для хранилища менеджера по миграции, иначеNO
false
.Обсуждение
YES
true
если получатель использует специфичного для хранилища менеджера по миграции, иначеNO
false
. Значение по умолчаниюYES
true
.Специфичный для хранилища менеджер по миграции класс, как гарантируют, не выполнит ни одного менеджера по миграции обратные вызовы делегата или значения обновления для заметных свойств.
Оператор импорта
Objective C
@import CoreData;
Swift
import CoreData
Доступность
Доступный в OS X v10.7 и позже.