Регистрация пользовательского типа хранилища
Для использования пользовательского типа хранилища в приложении необходимо зарегистрировать тип хранилища в NSPersistentStoreCoordinator использование класса registerStoreClass:forStoreType:. Имя типа должно быть уникальной строкой.
Обычно Вы определяете тип хранилища как строковую константу:
// in MyAtomicStore.h |
extern NSString *MY_ATOMIC_STORE_TYPE; |
// in MyAtomicStore.m |
NSString *MY_ATOMIC_STORE_TYPE = @"MyAtomicStore"; |
Необходимо гарантировать, что тип регистрируется, прежде чем Вы попытаетесь добавить хранилище того типа персистентному координатору хранилища. Например, в приложении делегируют в OS X, в котором Вы могли бы зарегистрироваться applicationWillFinishLaunching:.
- (void)applicationWillFinishLaunching:(NSNotification *)aNotification |
{ |
[NSPersistentStoreCoordinator registerStoreClass:[MyAtomicStore class] |
forStoreType:MY_ATOMIC_STORE_TYPE]; |
} |
В основанном на документе приложении тип является идентификатором NSPersistentDocument использование для соединения персистентного типа хранилища с типом документа (см. persistentStoreTypeForFileType:).