Class CKFetchDatabaseChangesOperation

  • All Implemented Interfaces:
    NSObject

    public class CKFetchDatabaseChangesOperation
    extends CKDatabaseOperation
    CKFetchDatabaseChangesOperation This operation will fetch changes to record zones within a database If a change anchor from a previous @c CKFetchDatabaseChangesOperation is passed in, only the zones that have changed since that anchor will be returned. This per-database @c serverChangeToken is not to be confused with the per-recordZone @c serverChangeToken from @c CKFetchRecordZoneChangesOperation. If this is your first fetch or if you wish to re-fetch all zones, pass nil for the change token. Change token are opaque tokens and clients should not infer any behavior based on their content. [@c] CKFetchDatabaseChangesOperation is supported in a @c privateCloudDatabase and @c sharedCloudDatabase API-Since: 10.0
    • Constructor Detail

      • CKFetchDatabaseChangesOperation

        protected CKFetchDatabaseChangesOperation​(org.moe.natj.general.Pointer peer)
    • Method Detail

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • automaticallyNotifiesObserversForKey

        public static boolean automaticallyNotifiesObserversForKey​(@NotNull
                                                                   @NotNull java.lang.String key)
      • cancelPreviousPerformRequestsWithTarget

        public static void cancelPreviousPerformRequestsWithTarget​(@NotNull
                                                                   @NotNull java.lang.Object aTarget)
      • cancelPreviousPerformRequestsWithTargetSelectorObject

        public static void cancelPreviousPerformRequestsWithTargetSelectorObject​(@NotNull
                                                                                 @NotNull java.lang.Object aTarget,
                                                                                 @NotNull
                                                                                 @NotNull org.moe.natj.objc.SEL aSelector,
                                                                                 @Nullable
                                                                                 @Nullable java.lang.Object anArgument)
      • classFallbacksForKeyedArchiver

        @NotNull
        public static @NotNull NSArray<java.lang.String> classFallbacksForKeyedArchiver()
      • classForKeyedUnarchiver

        @NotNull
        public static @NotNull org.moe.natj.objc.Class classForKeyedUnarchiver()
      • debugDescription_static

        public static java.lang.String debugDescription_static()
      • description_static

        public static java.lang.String description_static()
      • hash_static

        public static long hash_static()
      • instanceMethodSignatureForSelector

        public static NSMethodSignature instanceMethodSignatureForSelector​(org.moe.natj.objc.SEL aSelector)
      • instancesRespondToSelector

        public static boolean instancesRespondToSelector​(org.moe.natj.objc.SEL aSelector)
      • isSubclassOfClass

        public static boolean isSubclassOfClass​(org.moe.natj.objc.Class aClass)
      • keyPathsForValuesAffectingValueForKey

        @NotNull
        public static @NotNull NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(@NotNull
                                                                                             @NotNull java.lang.String key)
      • resolveClassMethod

        public static boolean resolveClassMethod​(org.moe.natj.objc.SEL sel)
      • resolveInstanceMethod

        public static boolean resolveInstanceMethod​(org.moe.natj.objc.SEL sel)
      • setVersion_static

        public static void setVersion_static​(long aVersion)
      • superclass_static

        public static org.moe.natj.objc.Class superclass_static()
      • version_static

        public static long version_static()
      • changeTokenUpdatedBlock

        @Nullable
        public @Nullable CKFetchDatabaseChangesOperation.Block_changeTokenUpdatedBlock_ret changeTokenUpdatedBlock()
        Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations. This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • fetchAllChanges

        public boolean fetchAllChanges()
        When set to YES, this operation will send repeated requests to the server until all record zone changes have been fetched. [@c] changeTokenUpdatedBlock will be invoked periodically, to give clients an updated change token so that already-fetched record zone changes don't need to be re-fetched on a subsequent operation. When set to NO, it is the responsibility of the caller to issue subsequent fetch-changes operations when moreComing is YES in a @c fetchDatabaseChangesCompletionBlock invocation. [@c] fetchAllChanges is @c YES by default Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations Blocks assigned to this operation may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • fetchDatabaseChangesCompletionBlock

        @Nullable
        public @Nullable CKFetchDatabaseChangesOperation.Block_fetchDatabaseChangesCompletionBlock_ret fetchDatabaseChangesCompletionBlock()
        This block is called when the operation completes. Clients are responsible for saving the change token at the end of the operation and passing it in to the next call to @c CKFetchDatabaseChangesOperation. If the server returns a @c CKErrorChangeTokenExpired error, the @c previousServerChangeToken value was too old and the client should toss its local cache and re-fetch the changes in this record zone starting with a nil @c previousServerChangeToken. If @c moreComing is true then the server wasn't able to return all the changes in this response. Another @c CKFetchDatabaseChangesOperation operation should be run with the @c previousServerChangeToken token from this operation. Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • previousServerChangeToken

        @Nullable
        public @Nullable CKServerChangeToken previousServerChangeToken()
      • recordZoneWithIDChangedBlock

        @Nullable
        public @Nullable CKFetchDatabaseChangesOperation.Block_recordZoneWithIDChangedBlock_ret recordZoneWithIDChangedBlock()
        Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations. This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • recordZoneWithIDWasDeletedBlock

        @Nullable
        public @Nullable CKFetchDatabaseChangesOperation.Block_recordZoneWithIDWasDeletedBlock_ret recordZoneWithIDWasDeletedBlock()
        Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations. This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • resultsLimit

        public long resultsLimit()
      • setChangeTokenUpdatedBlock

        public void setChangeTokenUpdatedBlock​(@Nullable
                                               @Nullable CKFetchDatabaseChangesOperation.Block_setChangeTokenUpdatedBlock value)
        Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations. This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • setFetchAllChanges

        public void setFetchAllChanges​(boolean value)
        When set to YES, this operation will send repeated requests to the server until all record zone changes have been fetched. [@c] changeTokenUpdatedBlock will be invoked periodically, to give clients an updated change token so that already-fetched record zone changes don't need to be re-fetched on a subsequent operation. When set to NO, it is the responsibility of the caller to issue subsequent fetch-changes operations when moreComing is YES in a @c fetchDatabaseChangesCompletionBlock invocation. [@c] fetchAllChanges is @c YES by default Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations Blocks assigned to this operation may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • setFetchDatabaseChangesCompletionBlock

        public void setFetchDatabaseChangesCompletionBlock​(@Nullable
                                                           @Nullable CKFetchDatabaseChangesOperation.Block_setFetchDatabaseChangesCompletionBlock value)
        This block is called when the operation completes. Clients are responsible for saving the change token at the end of the operation and passing it in to the next call to @c CKFetchDatabaseChangesOperation. If the server returns a @c CKErrorChangeTokenExpired error, the @c previousServerChangeToken value was too old and the client should toss its local cache and re-fetch the changes in this record zone starting with a nil @c previousServerChangeToken. If @c moreComing is true then the server wasn't able to return all the changes in this response. Another @c CKFetchDatabaseChangesOperation operation should be run with the @c previousServerChangeToken token from this operation. Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • setPreviousServerChangeToken

        public void setPreviousServerChangeToken​(@Nullable
                                                 @Nullable CKServerChangeToken value)
      • setRecordZoneWithIDChangedBlock

        public void setRecordZoneWithIDChangedBlock​(@Nullable
                                                    @Nullable CKFetchDatabaseChangesOperation.Block_setRecordZoneWithIDChangedBlock value)
        Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations. This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • setRecordZoneWithIDWasDeletedBlock

        public void setRecordZoneWithIDWasDeletedBlock​(@Nullable
                                                       @Nullable CKFetchDatabaseChangesOperation.Block_setRecordZoneWithIDWasDeletedBlock value)
        Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations. This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation.
      • setResultsLimit

        public void setResultsLimit​(long value)
      • recordZoneWithIDWasPurgedBlock

        @Nullable
        public @Nullable CKFetchDatabaseChangesOperation.Block_recordZoneWithIDWasPurgedBlock_ret recordZoneWithIDWasPurgedBlock()
        If this block is set it will be called instead of @c recordZoneWithIDWasDeletedBlock if the user deleted this zone via the iCloud storage UI. This is an indication that the user wanted all data deleted, so local cached data should be wiped and not re-uploaded to the server. Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation. API-Since: 11.0
      • setRecordZoneWithIDWasPurgedBlock

        public void setRecordZoneWithIDWasPurgedBlock​(@Nullable
                                                      @Nullable CKFetchDatabaseChangesOperation.Block_setRecordZoneWithIDWasPurgedBlock value)
        If this block is set it will be called instead of @c recordZoneWithIDWasDeletedBlock if the user deleted this zone via the iCloud storage UI. This is an indication that the user wanted all data deleted, so local cached data should be wiped and not re-uploaded to the server. Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation. API-Since: 11.0
      • recordZoneWithIDWasDeletedDueToUserEncryptedDataResetBlock

        @Nullable
        public @Nullable CKFetchDatabaseChangesOperation.Block_recordZoneWithIDWasDeletedDueToUserEncryptedDataResetBlock_ret recordZoneWithIDWasDeletedDueToUserEncryptedDataResetBlock()
        If this block is set it will be called instead of @c recordZoneWithIDWasDeletedBlock if the user chose to reset all encrypted data for their account. This is an indication that the user had to reset encrypted data during account recovery, so local cached data should be re-uploaded to the server to minimize data loss. Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation. API-Since: 15.0
      • setRecordZoneWithIDWasDeletedDueToUserEncryptedDataResetBlock

        public void setRecordZoneWithIDWasDeletedDueToUserEncryptedDataResetBlock​(@Nullable
                                                                                  @Nullable CKFetchDatabaseChangesOperation.Block_setRecordZoneWithIDWasDeletedDueToUserEncryptedDataResetBlock value)
        If this block is set it will be called instead of @c recordZoneWithIDWasDeletedBlock if the user chose to reset all encrypted data for their account. This is an indication that the user had to reset encrypted data during account recovery, so local cached data should be re-uploaded to the server to minimize data loss. Each @c CKOperation instance has a private serial queue. This queue is used for all callback block invocations This block may share mutable state with other blocks assigned to this operation, but any such mutable state should not be concurrently used outside of blocks assigned to this operation. API-Since: 15.0
      • useStoredAccessor

        @Deprecated
        public static boolean useStoredAccessor()
        Deprecated.