Stormcloud is an easy way to convert and write JSON to iCloud documents and back.
It also supports Core Data, converting a Core Data driven database to JSON and back—pass it an NSManagedObjectContext
and it will read out all of the entities, attributes, and relationships, wrap them in a JSON document and upload that document to iCloud.
let stormcloud = Stormcloud()
Regular JSON:
stormcloud.backupObjectsToJSON( objects : AnyObject, completion : (error : StormcloudError?, metadata : StormcloudMetadata?) -> () ) {
if let hasError = error {
// Handle error
}
if let newMetadata = metadata {
print("Successfully added new document with filename: \(metadata.filename)")
}
})
Restoring
stormcloud.restoreBackup(withMetadata metadata : StormcloudMetadata, completion : (error: StormcloudError?, restoredObjects : AnyObject? ) -> () ) {
if let hasError = error {
// Handle error
}
}
Managed Object Context:
stormcloud.backupCoreDataEntities(inContext: self.managedObjectContext, completion: { (error, metadata) -> () in
if let hasError = error {
// Handle error
}
if let newMetadata = metadata {
print("Successfully added new document with filename: \(metadata.filename)")
}
})
Restoring
stormcloud.restoreCoreDataBackup(withMetadata metadata : StormcloudMetadata, toContext context : NSManagedObjectContext, completion : (error : StormcloudError?) -> () ) {
if let hasError = error {
// Handle error here
}
}