Purpose: Define a change event for collection types.
Description: For any object that wishes to use either object change tracking or attribute change tracking, its collection attributes need to fire CollectionChangeEvent in the add or remove methods.
Responsibilities: Create a CollectionChangeEvent for an object
| Modifier and Type | Field and Description |
|---|---|
| public static final int | |
| protected int | changeType
INTERNAL: Change type is either add or remove |
| protected Integer | index
INTERNAL: index is the location of the change in the collection |
| protected boolean | isChangeApplied
INTERNAL: This flag will indicate if the object has already been removed or added to the collection before raising an event. |
| protected boolean | isSet
INTERNAL: Set operation in IndirectList results in raising two events: removal of the old value and addition of the new one at the same index: oldValue = list.set(i, newValue); raiseRemoveEvent(i, oldValue, true); raiseAddEvent(i, newValue, true); This flag indicates whether the event was raised by set operation on the list. |
| public static final int |
| Access | Constructor and Description |
|---|---|
| public | CollectionChangeEvent(Object collectionOwner, String propertyName, Object collectionChanged, Object elementChanged, int changeType, boolean isChangeApplied)
PUBLIC: Create a CollectionChangeEvent for an object based on the property name, old value, new value, change type (add or remove) and change applied. |
| public | CollectionChangeEvent(Object collectionOwner, String propertyName, Object collectionChanged, Object elementChanged, int changeType, Integer index, boolean isSet, boolean isChangeApplied)
PUBLIC: Create a CollectionChangeEvent for an object based on the property name, old value, new value, change type (add or remove) and the index where the object is/was in the collection (list), flag indicating whether the change (addition or removal) is part of a single set operation on a list, flag indicating whether the object has already been added or removed from the collection. |
| Modifier and Type | Method and Description |
|---|---|
| public int | |
| public Integer | |
| public boolean | isChangeApplied()
INTERNAL: Return the value indicating if the object has been already added or removed from the collection. |
| public boolean | |
| public void |
| ADD | back to summary |
|---|---|
| public static final int ADD | |
| changeType | back to summary |
|---|---|
| protected int changeType INTERNAL: Change type is either add or remove | |
| index | back to summary |
|---|---|
| protected Integer index INTERNAL: index is the location of the change in the collection | |
| isChangeApplied | back to summary |
|---|---|
| protected boolean isChangeApplied INTERNAL: This flag will indicate if the object has already been removed or added to the collection before raising an event. The object is not removed or added before raising an event during merge. | |
| isSet | back to summary |
|---|---|
| protected boolean isSet INTERNAL: Set operation in IndirectList results in raising two events: removal of the old value and addition of the new one at the same index: oldValue = list.set(i, newValue); raiseRemoveEvent(i, oldValue, true); raiseAddEvent(i, newValue, true); This flag indicates whether the event was raised by set operation on the list. | |
| REMOVE | back to summary |
|---|---|
| public static final int REMOVE | |
| CollectionChangeEvent | back to summary |
|---|---|
| public CollectionChangeEvent(Object collectionOwner, String propertyName, Object collectionChanged, Object elementChanged, int changeType, boolean isChangeApplied) PUBLIC: Create a CollectionChangeEvent for an object based on the property name, old value, new value, change type (add or remove) and change applied. | |
| CollectionChangeEvent | back to summary |
|---|---|
| public CollectionChangeEvent(Object collectionOwner, String propertyName, Object collectionChanged, Object elementChanged, int changeType, Integer index, boolean isSet, boolean isChangeApplied) PUBLIC: Create a CollectionChangeEvent for an object based on the property name, old value, new value, change type (add or remove) and the index where the object is/was in the collection (list), flag indicating whether the change (addition or removal) is part of a single set operation on a list, flag indicating whether the object has already been added or removed from the collection. | |
| getChangeType | back to summary |
|---|---|
| public int getChangeType() INTERNAL: Return the change type | |
| getIndex | back to summary |
|---|---|
| public Integer getIndex() INTERNAL: Return the index of the change in the collection | |
| isChangeApplied | back to summary |
|---|---|
| public boolean isChangeApplied() INTERNAL: Return the value indicating if the object has been already added or removed from the collection. | |
| isSet | back to summary |
|---|---|
| public boolean isSet() INTERNAL: Return whether the event was raised by set operation on the list. | |
| setIndex | back to summary |
|---|---|
| public void setIndex(Integer index) INTERNAL: Set the index of the change in the collection | |