CKModifySubscriptionsOperation
A CKModifySubscriptionsOperation
объект сохраняет изменения в один или больше CKSubscription
объекты. После создания или изменения конфигурации объекта подписки, используйте этот тип объекта операции для сохранения тех изменений в контейнере iCloud. Вы также используете экземпляры этого класса для удаления подписок постоянно из базы данных.
Если Вы присваиваете блок завершения completionBlock
свойство объекта операции, блок завершения вызывают после того, как работа выполняет и возвращает свои результаты Вам. Вы можете использовать блок завершения для выполнения работы по дому обслуживания, связанной с работой, но не используете ее для обработки результатов самой работы. Любой блок завершения, который Вы указываете, должен быть подготовлен обработать отказ работы выполнить ее задачу, ли вследствие ошибки или явной отмены.
Наследование
-
NSObject
-
NSOperation
-
CKOperation
-
CKDatabaseOperation
-
CKModifySubscriptionsOperation
-
NSObject
-
NSOperation
-
CKOperation
-
CKDatabaseOperation
-
CKModifySubscriptionsOperation
Оператор импорта
Swift
import CloudKit
Objective C
@import CloudKit;
Доступность
Доступный в OS X v10.10 и позже.
-
init (subscriptionsToSave:subscriptionIDsToDelete:) - initWithSubscriptionsToSave:subscriptionIDsToDelete:
Определяемый инициализаторИнициализирует и возвращает объект операции, сконфигурированный, чтобы сохранить и удалить указанные подписки.
Объявление
Swift
init!(subscriptionsToSave
subscriptionsToSave
: [AnyObject]!, subscriptionIDsToDeletesubscriptionIDsToDelete
: [AnyObject]!)Параметры
subscriptionsToSave
Массив
CKSubscription
объекты, представляющие подписки, чтобы сохранить или обновить. Можно указатьnil
для этого параметра.subscriptionIDsToDelete
Массив
NSString
объекты, представляющие IDs подписок, Вы хотите удалить, если таковые имеются. Можно указатьnil
для этого параметра.Возвращаемое значение
Инициализированный объект операции.
Обсуждение
Подписки, которые Вы намереваетесь сохранить или удалить, должны все находиться в том же контейнере, который необходимо указать при конфигурировании объекта операции. Сохранение подписки, которая не находится в текущей базе данных, создает ее в базе данных. Попытка удалить подписку, не существующую в текущей базе данных, возвращает ошибку для той подписки.
Оператор импорта
Objective C
@import CloudKit;
Swift
import CloudKit
Доступность
Доступный в OS X v10.10 и позже.
-
subscriptionsToSave subscriptionsToSave
СвойствоПодписки для сохранения к базе данных.
Объявление
Swift
var subscriptionsToSave: [AnyObject]!
Objective C
@property(nonatomic, copy) NSArray *subscriptionsToSave
Обсуждение
Это свойство содержит массив
CKSubscription
объекты, которые Вы хотите сохранить. Начальное содержание массива установлено в подписки, которые Вы указали сinitWithSubscriptionsToSave:subscriptionIDsToDelete:
метод. Можно изменить этот массив по мере необходимости прежде, чем выполнить работу. После сохранения объектов подписки сервер начинает применять критерии от тех объектов до содержания базы данных, генерируя уведомления нажатия как надлежащие.Если Вы намереваетесь изменить набор подписок, которые будут сохранены, обновите значение этого свойства прежде, чем выполнить работу или представить объект операции очереди.
Оператор импорта
Objective C
@import CloudKit;
Swift
import CloudKit
Доступность
Доступный в OS X v10.10 и позже.
-
IDs подписок Вы хотите удалить постоянно из базы данных.
Объявление
Swift
var subscriptionIDsToDelete: [AnyObject]!
Objective C
@property(nonatomic, copy) NSArray *subscriptionIDsToDelete
Обсуждение
Это свойство содержит массив
NSString
объекты, идентифицирующие подписки для удаления. Начальное содержание массива установлено в записи, которые Вы указали сinitWithSubscriptionsToSave:subscriptionIDsToDelete:
метод.Если Вы намереваетесь изменить набор подписок, которые будут удалены, обновите значение этого свойства прежде, чем выполнить работу или представить объект операции очереди.
Оператор импорта
Objective C
@import CloudKit;
Swift
import CloudKit
Доступность
Доступный в OS X v10.10 и позже.
-
Блок для выполнения после состояния всех изменений известен.
Объявление
Swift
var modifySubscriptionsCompletionBlock: (([AnyObject]!, [AnyObject]!, NSError!) -> Void)!
Обсуждение
Блок не возвращает значения и берет следующие параметры:
savedRecords
Массив
CKSubscription
объекты Вы попытались сохранить.deletedRecordIDs
Массив
NSString
объекты, соответствующие подпискам, Вы попытались удалить.operationError
Ошибочный объект, содержащий информацию о проблеме, или
nil
если результаты сохраняются успешно.Объект операции выполняет этот блок только один раз и представляет Ваш последний шанс обработать результаты работы. Блок выполняется на фоновом потоке Вашего приложения. Если Вы намереваетесь использовать этот блок для обработки результатов, установите его прежде, чем выполнить работу или представить объект операции очереди.
Этот блок сообщает об ошибке типа
CKErrorPartialFailure
когда это сохранит, или удалите только некоторые подписки успешно.userInfo
словарь ошибки содержит aCKPartialErrorsByItemIDKey
ключ, значение которогоNSDictionary
объект. Ключами того словаря является IDs подписок, не сохраненных или удаленных, и соответствующие значения являются ошибочными объектами, содержащими информацию о том, что произошло.Оператор импорта
Objective C
@import CloudKit;
Swift
import CloudKit
Доступность
Доступный в OS X v10.10 и позже.