Class SmartAssignmentCollection<F extends AssignmentHolderType>

  • All Implemented Interfaces:
    DebugDumpable, Iterable<SmartAssignmentElement>

    public class SmartAssignmentCollection<F extends AssignmentHolderType>
    extends Object
    implements Iterable<SmartAssignmentElement>, DebugDumpable
    Smart set of assignment values that keep track whether the assignment is new, old or changed. This information is used for various reasons. We specifically distinguish between assignments in objectCurrent and objectOld to be able to reliably detect phantom adds: a phantom add is an assignment that is both in OLD and CURRENT objects. This is important in waves greater than 0, where objectCurrent is already updated with existing assignments. (See MID-2422.) Each assignment is present here only once. For example, if it's present in old and current object, and also referenced by a delta, it is still here represented only as a single entry.
    Author:
    Radovan Semancik