Class

CNSaveRequest

A save request operation for contacts.

Overview

The CNSaveRequest class creates a new save request for each save operation on the contact store. You can batch multiple changes into one save request (note that these changes only apply to objects). In the case of overlapping changes in multiple or concurrent save requests, the last change wins.

If you try to add an object (that is, a contact or a group) that already exists in the contact store, you receive the insertedRecordAlreadyExists error and the CNErrorUserInfoAffectedRecordsKey array is updated to contain the object you tried to add. If you try to update or delete an object that is not present in the contact store, the save request does not perform the update or deletion, the recordDoesNotExist error occurs, and the CNErrorUserInfoAffectedRecordsKey array is updated to contain the object you tried to update or delete. Do not access objects in the save request while a save request is executing.

Topics

Saving a Contact Changes

func add(CNMutableContact, toContainerWithIdentifier: String?)

Adds the specified contact to the contact store.

func update(CNMutableContact)

Updates an existing contact in the contact store.

func delete(CNMutableContact)

Deletes a contact from the contact store.

Saving Group Changes

func update(CNMutableGroup)

Updates an existing group in the contact store.

func delete(CNMutableGroup)

Deletes a group from the contact store.

func addMember(CNContact, to: CNGroup)

Adds a contact as a member of a group.

func removeMember(CNContact, from: CNGroup)

Removes a contact as a member of a group.

Relationships

Inherits From

Conforms To