public interface PropertyDelta<T> extends ItemDelta<PrismPropertyValue<T>,PrismPropertyDefinition<T>>
This class describes what values are to be added, removed or replaced in the property. The delta can be either add+delete or replace, but not both. It either describes what values to add and delete from the property (add+delete) or what is the new set of values (replace). Add+delete deltas can be merged without a loss. There are ideal for multi-value properties. If replace deltas are merged, only the last value will be present. These are better suited for single-value properties.
ObjectDelta
INDENT_STRING
Modifier and Type | Method and Description |
---|---|
void |
addRealValuesToAdd(Collection<T> newValues) |
void |
addRealValuesToAdd(T... newValues) |
void |
addRealValuesToDelete(Collection<T> values) |
void |
addRealValuesToDelete(T... newValues) |
void |
applyDefinition(PrismPropertyDefinition<T> definition) |
PropertyDelta<T> |
clone() |
T |
getAnyRealValue() |
Class<PrismProperty> |
getItemClass() |
PrismPropertyDefinition<T> |
getPropertyDefinition() |
PrismProperty<T> |
getPropertyNewMatchingPath()
Returns the "new" state of the property - the state that would be after the delta
is applied.
|
PrismProperty<T> |
getPropertyNewMatchingPath(PrismProperty<T> propertyOld)
Returns the "new" state of the property - the state that would be after the delta
is applied.
|
<T> Collection<PrismPropertyValue<T>> |
getValues(Class<T> type)
Returns all values regardless of whether they are added or removed or replaced.
|
<P extends PrismProperty> |
instantiateEmptyProperty() |
boolean |
isApplicableToType(Item item) |
boolean |
isRealValueToAdd(PrismPropertyValue<?> value) |
boolean |
isRealValueToDelete(PrismPropertyValue<?> value) |
boolean |
isRedundant(PrismObject<? extends Objectable> object,
MatchingRule<T> matchingRule,
boolean assumeMissingItems) |
PropertyDelta<T> |
narrow(PrismObject<? extends Objectable> object,
boolean assumeMissingItems)
Filters out all delta values that are meaningless to apply.
|
PropertyDelta<T> |
narrow(PrismObject<? extends Objectable> object,
MatchingRule<T> matchingRule,
boolean assumeMissingItems) |
void |
setDefinition(PrismPropertyDefinition<T> definition) |
void |
setPropertyDefinition(PrismPropertyDefinition<T> propertyDefinition) |
void |
setRealValuesToReplace(T... newValues) |
accept, accept, accept, addEstimatedOldValue, addEstimatedOldValues, addEstimatedOldValues, addsAnyValue, addToReplaceDelta, addValuesToAdd, addValuesToAdd, addValuesToDelete, addValuesToDelete, addValueToAdd, addValueToDelete, addValueToReplace, applyDefinition, applyTo, applyTo, applyTo, applyTo, applyToMatchingPath, assertDefinitions, assertDefinitions, checkConsistence, checkConsistence, checkConsistence, clear, clearValuesToAdd, clearValuesToDelete, clearValuesToReplace, cloneWithChangedParentPath, contains, contains, createReverseDelta, debugDump, distributeReplace, equals, equivalent, filterValues, findValueToAddOrReplace, foreach, getAnyValue, getDefinition, getElementName, getEstimatedOldValues, getItemNew, getItemNew, getItemNewMatchingPath, getParentPath, getPath, getPrismContext, getSubDelta, getValueChanges, getValuesToAdd, getValuesToDelete, getValuesToReplace, hasCompleteDefinition, isAdd, isApplicableTo, isDelete, isEmpty, isImmutable, isInFactEmpty, isRaw, isRedundant, isRedundant, isReplace, isValueToAdd, isValueToAdd, isValueToDelete, isValueToDelete, isValueToReplace, isValueToReplace, merge, mergeValuesToAdd, mergeValuesToAdd, mergeValuesToDelete, mergeValuesToDelete, mergeValuesToReplace, mergeValuesToReplace, mergeValueToAdd, mergeValueToDelete, mergeValueToReplace, narrow, normalize, removeValueToAdd, removeValueToDelete, removeValueToReplace, resetValuesToAdd, resetValuesToDelete, resetValuesToReplace, revive, setElementName, setEstimatedOldValues, setImmutable, setOriginTypeRecursive, setParentPath, setValuesToReplace, setValuesToReplace, setValueToReplace, setValueToReplace, simplify, size, toDeltaSetTriple, toDeltaSetTriple, toString, validate, validate, validateValues, validateValues
debugDump, debugDumpLazily, debugDumpLazily
PrismPropertyDefinition<T> getPropertyDefinition()
void setPropertyDefinition(PrismPropertyDefinition<T> propertyDefinition)
void setDefinition(PrismPropertyDefinition<T> definition)
setDefinition
in interface ItemDelta<PrismPropertyValue<T>,PrismPropertyDefinition<T>>
void applyDefinition(PrismPropertyDefinition<T> definition) throws SchemaException
applyDefinition
in interface ItemDelta<PrismPropertyValue<T>,PrismPropertyDefinition<T>>
SchemaException
Class<PrismProperty> getItemClass()
getItemClass
in interface ItemDelta<PrismPropertyValue<T>,PrismPropertyDefinition<T>>
<T> Collection<PrismPropertyValue<T>> getValues(Class<T> type)
T getAnyRealValue()
<P extends PrismProperty> P instantiateEmptyProperty()
boolean isApplicableToType(Item item)
PropertyDelta<T> clone()
clone
in interface ItemDelta<PrismPropertyValue<T>,PrismPropertyDefinition<T>>
boolean isRealValueToAdd(PrismPropertyValue<?> value)
boolean isRealValueToDelete(PrismPropertyValue<?> value)
PrismProperty<T> getPropertyNewMatchingPath() throws SchemaException
SchemaException
PrismProperty<T> getPropertyNewMatchingPath(PrismProperty<T> propertyOld) throws SchemaException
SchemaException
PropertyDelta<T> narrow(PrismObject<? extends Objectable> object, boolean assumeMissingItems)
ItemDelta
narrow
in interface ItemDelta<PrismPropertyValue<T>,PrismPropertyDefinition<T>>
assumeMissingItems
- Assumes that some items in the object may be missing. So replacing them by null or deleting some
values from them cannot be narrowed out.PropertyDelta<T> narrow(PrismObject<? extends Objectable> object, MatchingRule<T> matchingRule, boolean assumeMissingItems)
boolean isRedundant(PrismObject<? extends Objectable> object, MatchingRule<T> matchingRule, boolean assumeMissingItems)
void setRealValuesToReplace(T... newValues)
void addRealValuesToAdd(T... newValues)
void addRealValuesToDelete(T... newValues)
void addRealValuesToAdd(Collection<T> newValues)
void addRealValuesToDelete(Collection<T> values)
Copyright © 2021 Evolveum. All rights reserved.