Class NSConstraintConflict

  • All Implemented Interfaces:
    NSObject

    public class NSConstraintConflict
    extends NSObject
    Used to report merge conflicts which include uniqueness constraint violations. Optimistic locking failures will be reported separately from uniquness conflicts and will be resolved first. Each constraint violated will result in a separate NSMergeConflict, although if an entity hierarchy has a constraint which is extended in subentities, all constraint violations for that constraint will be collapsed into a single report.
    • Constructor Detail

      • NSConstraintConflict

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

      • accessInstanceVariablesDirectly

        public static boolean accessInstanceVariablesDirectly()
      • allocWithZone

        public static java.lang.Object allocWithZone​(org.moe.natj.general.ptr.VoidPtr zone)
      • automaticallyNotifiesObserversForKey

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

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

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

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

        public static 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

        public static NSSet<java.lang.String> keyPathsForValuesAffectingValueForKey​(java.lang.String key)
      • new_objc

        public static java.lang.Object new_objc()
      • 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()
      • conflictingObjects

        public NSArray<? extends NSManagedObject> conflictingObjects()
        The objects in violation of the constraint. May contain one (in the case of a db level conflict) or more objects.
      • conflictingSnapshots

        public NSArray<? extends NSDictionary<?,​?>> conflictingSnapshots()
        The original property values of objects in violation of the constraint. Will contain as many objects as there are conflictingObjects. If an object was unchanged, its snapshot will instead be -[NSNull null].
      • constraint

        public NSArray<java.lang.String> constraint()
        The constraint which has been violated.
      • constraintValues

        public NSDictionary<java.lang.String,​?> constraintValues()
        The values which the conflictingObjects had when this conflict was created. May no longer match the values of any conflicted object if something else resolved the conflict.
      • databaseObject

        public NSManagedObject databaseObject()
        Object whose DB row is using constraint values. May be null if this is a context-level violation.
      • databaseSnapshot

        public NSDictionary<java.lang.String,​?> databaseSnapshot()
        DB row already using constraint values. May be null if this is a context-level violation.
      • initWithConstraintDatabaseObjectDatabaseSnapshotConflictingObjectsConflictingSnapshots

        public NSConstraintConflict initWithConstraintDatabaseObjectDatabaseSnapshotConflictingObjectsConflictingSnapshots​(NSArray<java.lang.String> contraint,
                                                                                                                           NSManagedObject databaseObject,
                                                                                                                           NSDictionary<?,​?> databaseSnapshot,
                                                                                                                           NSArray<? extends NSManagedObject> conflictingObjects,
                                                                                                                           NSArray<?> conflictingSnapshots)
        There are two situations in which a constraint conflict may occur: 1. Between multiple objects being saved in a single managed object context. In this case, the conflict will have a nil database object/snapshot, and multiple conflicting objects/snapshots representing the state of the objects when they were first faulted or inserted into the context. 2. Between a single object being saved in a managed object context and the external store. In this case, the constraint conflict will have a database object, the current row snapshot for the database object, plus a a single conflicting object and its snapshot from when it was first faulted or inserted. Snapshot dictionaries include values for all attributes and to-one relationships, but not to-many relationships. Relationship values are NSManagedObjectID references. to-many relationships must be pulled from the persistent store as needed.