TPMigrationManager 1.0.1

TPMigrationManager 1.0.1

测试测试
语言语言 Obj-CObjective C
许可 MIT
发布上次发布2014年12月

未指明 维护。



  • 作者
  • MIYOKAWA, Nobuyoshi

描述

TPMigrationManager 类提供了方便的 CoreData 迁移方式。

有两种迁移方式。

  • 推断映射模型迁移。
  • 特定映射模型迁移。

‘推断映射模型迁移’ 是一种简单且快速的迁移方式。您可以使用 migrateByInferredMappingModelWithOptions:completed: 方法进行迁移。

对于这种方式,您无需准备任何迁移模型。CoreData 框架检查新旧模型之间的差异并尝试自动迁移。这是 Apple 推荐的方式。如果模型变化不大,您应该使用这种方式。对于这种方式,通过 cancel 方法无法终止迁移过程,并且迁移进度属性未发生任何变化。

‘特定映射模型迁移’ 是一种灵活的迁移方式。您可以使用 migrateBySpecificMappingModelWithOptions:progress:completed: 方法进行迁移。

使用这种方式,您可以通过自己提供特定的迁移模型将任何旧模型转换为新的模型。您可以通过 cancel 方法随时终止迁移过程,并且迁移进度属性会定期更新。

在开始迁移之前,您应该使用 migrationStatus 来检查在您的环境中可以使用哪种迁移方式。

在迁移过程中,将创建临时持久存储文件,此文件用于迁移。迁移完成后,临时持久存储将覆盖旧的存储。如果通过 cancel 方法终止或由于错误而失败,旧持久存储保持不变。如果您希望保留旧持久存储文件,可以在迁移方法中指定 TPMigrationManagerBackupPersistentStoreExtensionOption 选项。

迁移完成后,现有的持久存储将被新的持久存储替换,无论是否使用 TPMigrationManagerBackupPersistentStoreExtensionOption 选项。如果您已经有一个专门用于旧持久存储的 NSManagedObjectContext 对象,您必须为新存储重新创建它。

平台

iOS 5 及以上版本。您必须启用 ARC。

准备

将 TPMigrationManager 目录中的 TPMigrationManager.h 和 TPMigrationManager.m 文件复制到您的项目中。

使用

参阅 API 文档。

作者

MIYOKAWA, Nobuyoshi

版权

麻省理工学院许可证

版权所有 (c) 2013-2014 MIYOKAWA, Nobuyoshi (http://www.tempus.org/)

任何人获取本软件及其关联文档副本(“软件”)的副本,本许可协议免费授予未经限制地处理该软件的权利,包括但不限于使用、复制、修改、合并、发布、分发、许可及/或出售软件副本的权利,并允许向软件提供者提供本软件的人员按以下条件进行此类操作:

上述版权声明和本许可协议应包含在软件的所有副本或实质性部分的副本中。

软件按“原样”提供,没有任何形式的担保,无论是明示的、暗示的,包括但不仅限于适销性、特定用途适用性和非侵权性担保。在任何情况下,作者或版权持有人不对任何索赔、损害或其他责任负责,无论这些责任源于合同、侵权或其他方式,都与软件或软件的使用或其它操作有关。