mirror of
https://github.com/JohnEstropia/CoreStore.git
synced 2026-04-11 03:36:51 +02:00
WIP: migrations for CoreStoreObjects
This commit is contained in:
@@ -105,10 +105,11 @@ internal extension NSManagedObjectModel {
|
|||||||
if let modelVersionFileURL = modelVersionFileURL,
|
if let modelVersionFileURL = modelVersionFileURL,
|
||||||
let rootModel = NSManagedObjectModel(contentsOf: modelVersionFileURL) {
|
let rootModel = NSManagedObjectModel(contentsOf: modelVersionFileURL) {
|
||||||
|
|
||||||
rootModel.modelVersionFileURL = modelVersionFileURL
|
// TODO: apply to DynamicModel as well
|
||||||
rootModel.modelVersions = modelVersions
|
rootModel.modelVersionFileURL = modelVersionFileURL
|
||||||
rootModel.currentModelVersion = currentModelVersion
|
rootModel.modelVersions = modelVersions
|
||||||
return rootModel
|
rootModel.currentModelVersion = currentModelVersion
|
||||||
|
return rootModel
|
||||||
}
|
}
|
||||||
|
|
||||||
CoreStore.abort("Could not create an \(cs_typeName(NSManagedObjectModel.self)) from the model at URL \"\(modelFileURL)\".")
|
CoreStore.abort("Could not create an \(cs_typeName(NSManagedObjectModel.self)) from the model at URL \"\(modelFileURL)\".")
|
||||||
@@ -178,29 +179,6 @@ internal extension NSManagedObjectModel {
|
|||||||
return mapping
|
return mapping
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: remove
|
|
||||||
// @nonobjc
|
|
||||||
// internal func entityNames(for type: NSManagedObject.Type) -> Set<EntityName> {
|
|
||||||
//
|
|
||||||
// let className = NSStringFromClass(type)
|
|
||||||
// return Set(
|
|
||||||
// self.objectClassNamesByEntityName
|
|
||||||
// .filter({ $0.value == className })
|
|
||||||
// .map({ $0.key })
|
|
||||||
// )
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @nonobjc
|
|
||||||
// internal func entityTypesMapping() -> [EntityName: NSManagedObject.Type] {
|
|
||||||
//
|
|
||||||
// var mapping = [EntityName: NSManagedObject.Type]()
|
|
||||||
// self.objectClassNamesByEntityName.forEach { (entityName, className) in
|
|
||||||
//
|
|
||||||
// mapping[entityName] = (NSClassFromString(className)! as! NSManagedObject.Type)
|
|
||||||
// }
|
|
||||||
// return mapping
|
|
||||||
// }
|
|
||||||
|
|
||||||
@nonobjc
|
@nonobjc
|
||||||
internal func mergedModels() -> [NSManagedObjectModel] {
|
internal func mergedModels() -> [NSManagedObjectModel] {
|
||||||
|
|
||||||
@@ -222,6 +200,7 @@ internal extension NSManagedObjectModel {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: apply to DynamicModel as well
|
||||||
let versionModelFileURL = modelFileURL.appendingPathComponent("\(modelVersion).mom", isDirectory: false)
|
let versionModelFileURL = modelFileURL.appendingPathComponent("\(modelVersion).mom", isDirectory: false)
|
||||||
guard let model = NSManagedObjectModel(contentsOf: versionModelFileURL) else {
|
guard let model = NSManagedObjectModel(contentsOf: versionModelFileURL) else {
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user