Interface ItemDeltaDelegator<V extends PrismValue,D extends ItemDefinition<?>>
-
- All Superinterfaces:
DebugDumpable
,Foreachable<V>
,Freezable
,Itemable
,ItemDelta<V,D>
,PathVisitable
,PrismContextSensitive
,Serializable
,Visitable
public interface ItemDeltaDelegator<V extends PrismValue,D extends ItemDefinition<?>> extends ItemDelta<V,D>
-
-
Field Summary
-
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description default void
accept(Visitor visitor)
default void
accept(Visitor visitor, boolean includeOldValues)
default void
accept(Visitor visitor, ItemPath path, boolean recursive)
default void
addEstimatedOldValue(V newValue)
default void
addEstimatedOldValues(Collection<V> newValues)
default void
addEstimatedOldValues(V... newValues)
default boolean
addsAnyValue()
default void
addToReplaceDelta()
default void
addValuesToAdd(Collection<V> newValues)
default void
addValuesToAdd(V... newValues)
default void
addValuesToDelete(Collection<V> newValues)
default void
addValuesToDelete(V... newValues)
default void
addValueToAdd(V newValue)
default void
addValueToDelete(V newValue)
default void
addValueToReplace(V newValue)
default void
applyDefinition(D definition)
default void
applyDefinition(D itemDefinition, boolean force)
default void
applyTo(Item item)
default void
applyTo(PrismContainerValue containerValue)
default void
applyToMatchingPath(Item item)
Applies delta to item.default void
assertDefinitions(boolean tolerateRawValues, Supplier<String> sourceDescriptionSupplier)
default void
assertDefinitions(Supplier<String> sourceDescriptionSupplier)
default void
checkConsistence()
default void
checkConsistence(boolean requireDefinition, boolean prohibitRaw, ConsistencyCheckScope scope)
default void
checkConsistence(ConsistencyCheckScope scope)
default void
clear()
default void
clearValuesToAdd()
default void
clearValuesToDelete()
default void
clearValuesToReplace()
default ItemDelta<V,D>
clone()
default ItemDelta<V,D>
cloneWithChangedParentPath(ItemPath newParentPath)
default boolean
contains(ItemDelta<V,D> other)
Returns true if the other delta is a complete subset of this delta.default boolean
contains(ItemDelta<V,D> other, EquivalenceStrategy strategy)
Returns true if the other delta is a complete subset of this delta.default ItemDelta<V,D>
createReverseDelta()
default String
debugDump(int indent)
ItemDelta<V,D>
delegate()
default void
distributeReplace(Collection<V> existingValues)
Distributes the replace values of this delta to add and delete with respect to provided existing values.default boolean
equivalent(ItemDelta other)
Deltas are equivalent if they have the same result when applied to an object.default void
filterValues(Function<V,Boolean> function)
default void
filterYields(BiFunction<V,PrismContainerValue,Boolean> function)
default V
findValueToAddOrReplace(V value)
default void
foreach(Processor<V> processor)
Will call processor for every element in the instance.default void
freeze()
default V
getAnyValue()
default D
getDefinition()
default ItemName
getElementName()
default Collection<V>
getEstimatedOldValues()
Returns estimated state of the old value before the delta is applied.default Class<? extends Item>
getItemClass()
default Item<V,D>
getItemNew()
Returns the "new" state of the property - the state that would be after the delta is applied.default Item<V,D>
getItemNew(Item<V,D> itemOld)
Returns the "new" state of the property - the state that would be after the delta is applied.default Item<V,D>
getItemNewMatchingPath(Item<V,D> itemOld)
default ItemPath
getParentPath()
default @NotNull ItemPath
getPath()
default PrismContext
getPrismContext()
default ItemDelta<?,?>
getSubDelta(ItemPath path)
default Collection<V>
getValueChanges(PlusMinusZero mode)
default Collection<V>
getValuesToAdd()
default Collection<V>
getValuesToDelete()
default Collection<V>
getValuesToReplace()
default boolean
hasCompleteDefinition()
default boolean
isAdd()
default boolean
isApplicableTo(Item item)
default boolean
isDelete()
default boolean
isEmpty()
default boolean
isImmutable()
default boolean
isLiterallyEmpty()
The original semantics ofItemDelta.isEmpty()
method: returns true if all of values to add, delete, replace are null.default boolean
isRaw()
default boolean
isRedundant(PrismObject<? extends Objectable> object, ParameterizedEquivalenceStrategy strategy, boolean assumeMissingItems)
Checks if the delta is redundant w.r.t.default boolean
isReplace()
default boolean
isValueToAdd(V value)
default boolean
isValueToDelete(V value)
default boolean
isValueToReplace(V value)
default void
merge(ItemDelta<V,D> deltaToMerge)
Merge specified delta to this delta.default void
mergeValuesToAdd(Collection<V> newValues)
default void
mergeValuesToAdd(V[] newValues)
default void
mergeValuesToDelete(Collection<V> newValues)
default void
mergeValuesToDelete(V[] newValues)
default void
mergeValuesToReplace(Collection<V> newValues)
default void
mergeValuesToReplace(V[] newValues)
default void
mergeValueToAdd(V newValue)
default void
mergeValueToDelete(V newValue)
default void
mergeValueToReplace(V newValue)
default ItemDelta<V,D>
narrow(PrismObject<? extends Objectable> object, @NotNull Comparator<V> plusComparator, @NotNull Comparator<V> minusComparator, boolean assumeMissingItems)
Returns the narrowed delta that will have the same effect on the object as the current one.default void
normalize()
default boolean
removeValueToAdd(PrismValue valueToRemove)
default boolean
removeValueToDelete(PrismValue valueToRemove)
default boolean
removeValueToReplace(PrismValue valueToRemove)
default void
resetValuesToAdd()
default void
resetValuesToDelete()
default void
resetValuesToReplace()
default void
revive(PrismContext prismContext)
default void
setDefinition(D definition)
default void
setElementName(QName elementName)
default void
setEstimatedOldValues(Collection<V> estimatedOldValues)
default void
setOriginTypeRecursive(OriginType originType)
Set origin type to all values and subvaluesdefault void
setParentPath(ItemPath parentPath)
default void
setValuesToReplace(Collection<V> newValues)
default void
setValuesToReplace(V... newValues)
default void
setValueToReplace()
Sets empty value to replace.default void
setValueToReplace(V newValue)
default void
simplify()
Transforms the delta to the simplest (and safest) form.default int
size()
default PrismValueDeltaSetTriple<V>
toDeltaSetTriple(Item<V,D> itemOld)
default void
validate()
default void
validate(String contextDescription)
default void
validateValues(ItemDeltaValidator<V> validator)
default void
validateValues(ItemDeltaValidator<V> validator, Collection<V> oldValues)
-
Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDumpLazily, debugDumpLazily
-
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable
-
Methods inherited from interface com.evolveum.midpoint.prism.delta.ItemDelta
equals, getRealValuesToAdd, getRealValuesToDelete, getRealValuesToReplace, isOperational, toString
-
-
-
-
Method Detail
-
getPrismContext
default PrismContext getPrismContext()
- Specified by:
getPrismContext
in interfacePrismContextSensitive
-
getElementName
default ItemName getElementName()
- Specified by:
getElementName
in interfaceItemable
- Specified by:
getElementName
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
setElementName
default void setElementName(QName elementName)
- Specified by:
setElementName
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getParentPath
default ItemPath getParentPath()
- Specified by:
getParentPath
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
setParentPath
default void setParentPath(ItemPath parentPath)
- Specified by:
setParentPath
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getPath
@NotNull default @NotNull ItemPath getPath()
- Specified by:
getPath
in interfaceItemable
- Specified by:
getPath
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getDefinition
default D getDefinition()
- Specified by:
getDefinition
in interfaceItemable
- Specified by:
getDefinition
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
setDefinition
default void setDefinition(D definition)
- Specified by:
setDefinition
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
accept
default void accept(Visitor visitor)
- Specified by:
accept
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Specified by:
accept
in interfaceVisitable<V extends PrismValue>
-
accept
default void accept(Visitor visitor, boolean includeOldValues)
- Specified by:
accept
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
size
default int size()
- Specified by:
size
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
accept
default void accept(Visitor visitor, ItemPath path, boolean recursive)
- Specified by:
accept
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Specified by:
accept
in interfacePathVisitable
-
applyDefinition
default void applyDefinition(D definition) throws SchemaException
- Specified by:
applyDefinition
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
hasCompleteDefinition
default boolean hasCompleteDefinition()
- Specified by:
hasCompleteDefinition
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getItemClass
default Class<? extends Item> getItemClass()
- Specified by:
getItemClass
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getValuesToAdd
default Collection<V> getValuesToAdd()
- Specified by:
getValuesToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
clearValuesToAdd
default void clearValuesToAdd()
- Specified by:
clearValuesToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getValuesToDelete
default Collection<V> getValuesToDelete()
- Specified by:
getValuesToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
clearValuesToDelete
default void clearValuesToDelete()
- Specified by:
clearValuesToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getValuesToReplace
default Collection<V> getValuesToReplace()
- Specified by:
getValuesToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
clearValuesToReplace
default void clearValuesToReplace()
- Specified by:
clearValuesToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addValuesToAdd
default void addValuesToAdd(Collection<V> newValues)
- Specified by:
addValuesToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addValuesToAdd
default void addValuesToAdd(V... newValues)
- Specified by:
addValuesToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addValueToAdd
default void addValueToAdd(V newValue)
- Specified by:
addValueToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
removeValueToAdd
default boolean removeValueToAdd(PrismValue valueToRemove)
- Specified by:
removeValueToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
removeValueToDelete
default boolean removeValueToDelete(PrismValue valueToRemove)
- Specified by:
removeValueToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
removeValueToReplace
default boolean removeValueToReplace(PrismValue valueToRemove)
- Specified by:
removeValueToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
mergeValuesToAdd
default void mergeValuesToAdd(Collection<V> newValues)
- Specified by:
mergeValuesToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
mergeValuesToAdd
default void mergeValuesToAdd(V[] newValues)
- Specified by:
mergeValuesToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
mergeValueToAdd
default void mergeValueToAdd(V newValue)
- Specified by:
mergeValueToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addValuesToDelete
default void addValuesToDelete(Collection<V> newValues)
- Specified by:
addValuesToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addValuesToDelete
default void addValuesToDelete(V... newValues)
- Specified by:
addValuesToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addValueToDelete
default void addValueToDelete(V newValue)
- Specified by:
addValueToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
mergeValuesToDelete
default void mergeValuesToDelete(Collection<V> newValues)
- Specified by:
mergeValuesToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
mergeValuesToDelete
default void mergeValuesToDelete(V[] newValues)
- Specified by:
mergeValuesToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
mergeValueToDelete
default void mergeValueToDelete(V newValue)
- Specified by:
mergeValueToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
resetValuesToAdd
default void resetValuesToAdd()
- Specified by:
resetValuesToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
resetValuesToDelete
default void resetValuesToDelete()
- Specified by:
resetValuesToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
resetValuesToReplace
default void resetValuesToReplace()
- Specified by:
resetValuesToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
setValuesToReplace
default void setValuesToReplace(Collection<V> newValues)
- Specified by:
setValuesToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
setValuesToReplace
default void setValuesToReplace(V... newValues)
- Specified by:
setValuesToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
setValueToReplace
default void setValueToReplace()
Description copied from interface:ItemDelta
Sets empty value to replace. This efficiently means removing all values.- Specified by:
setValueToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
setValueToReplace
default void setValueToReplace(V newValue)
- Specified by:
setValueToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addValueToReplace
default void addValueToReplace(V newValue)
- Specified by:
addValueToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
mergeValuesToReplace
default void mergeValuesToReplace(Collection<V> newValues)
- Specified by:
mergeValuesToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
mergeValuesToReplace
default void mergeValuesToReplace(V[] newValues)
- Specified by:
mergeValuesToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
mergeValueToReplace
default void mergeValueToReplace(V newValue)
- Specified by:
mergeValueToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isValueToAdd
default boolean isValueToAdd(V value)
- Specified by:
isValueToAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isValueToDelete
default boolean isValueToDelete(V value)
- Specified by:
isValueToDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isValueToReplace
default boolean isValueToReplace(V value)
- Specified by:
isValueToReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getAnyValue
default V getAnyValue()
- Specified by:
getAnyValue
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isEmpty
default boolean isEmpty()
- Specified by:
isEmpty
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isLiterallyEmpty
default boolean isLiterallyEmpty()
Description copied from interface:ItemDelta
The original semantics ofItemDelta.isEmpty()
method: returns true if all of values to add, delete, replace are null. TODO is this really needed?- Specified by:
isLiterallyEmpty
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addsAnyValue
default boolean addsAnyValue()
- Specified by:
addsAnyValue
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
foreach
default void foreach(Processor<V> processor)
Description copied from interface:Foreachable
Will call processor for every element in the instance. This is NOT recursive. E.g. in case of collection of collections the processor will NOT be called for elements of the inner collections. If you need recursion please have a look at Visitor.- Specified by:
foreach
in interfaceForeachable<V extends PrismValue>
- Specified by:
foreach
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getEstimatedOldValues
default Collection<V> getEstimatedOldValues()
Description copied from interface:ItemDelta
Returns estimated state of the old value before the delta is applied. This information is not entirely reliable. The state might change between the value is read and the delta is applied. This is property is optional and even if provided it is only for for informational purposes.If this method returns null then it should be interpreted as "I do not know". In that case the delta has no information about the old values. If this method returns empty collection then it should be interpreted that we know that there were no values in this item before the delta was applied.
- Specified by:
getEstimatedOldValues
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Returns:
- estimated state of the old value before the delta is applied (may be null).
-
setEstimatedOldValues
default void setEstimatedOldValues(Collection<V> estimatedOldValues)
- Specified by:
setEstimatedOldValues
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addEstimatedOldValues
default void addEstimatedOldValues(Collection<V> newValues)
- Specified by:
addEstimatedOldValues
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addEstimatedOldValues
default void addEstimatedOldValues(V... newValues)
- Specified by:
addEstimatedOldValues
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addEstimatedOldValue
default void addEstimatedOldValue(V newValue)
- Specified by:
addEstimatedOldValue
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
normalize
default void normalize()
- Specified by:
normalize
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isReplace
default boolean isReplace()
- Specified by:
isReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isAdd
default boolean isAdd()
- Specified by:
isAdd
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isDelete
default boolean isDelete()
- Specified by:
isDelete
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
clear
default void clear()
- Specified by:
clear
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
narrow
default ItemDelta<V,D> narrow(PrismObject<? extends Objectable> object, @NotNull @NotNull Comparator<V> plusComparator, @NotNull @NotNull Comparator<V> minusComparator, boolean assumeMissingItems)
Description copied from interface:ItemDelta
Returns the narrowed delta that will have the same effect on the object as the current one.We can skip deletion of vDel if there is no vEx ~ vDel (under minusComparator).
We can skip addition of vAdd if there is existing vEx ~ vAdd (under plusComparator). But if we do that we must be sure to skip deletion of all vDel ~ vAdd (under minusComparator). Otherwise we would delete vDel but fail to add equivalent vAdd.
We can skip replacing of a set of values if and only if existing item has equivalent values under plusComparator.
This reasoning is bound to the actual application algorithm in ItemDeltaImpl. But we should be aware that there are deltas that are applied by other code, e.g. those than are applied on a resource.
- Specified by:
narrow
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
plusComparator
- Comparator we want to use when determining skippability of values being added.minusComparator
- Comparator we want to use when determining skippability of values being deleted.
-
isRedundant
default boolean isRedundant(PrismObject<? extends Objectable> object, ParameterizedEquivalenceStrategy strategy, boolean assumeMissingItems)
Description copied from interface:ItemDelta
Checks if the delta is redundant w.r.t. current state of the object. I.e. if it changes the current object state.- Specified by:
isRedundant
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
assumeMissingItems
- Assumes that some items in the object may be missing. So delta that replaces them by null
-
validate
default void validate() throws SchemaException
- Specified by:
validate
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
validate
default void validate(String contextDescription) throws SchemaException
- Specified by:
validate
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
validateValues
default void validateValues(ItemDeltaValidator<V> validator) throws SchemaException
- Specified by:
validateValues
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
validateValues
default void validateValues(ItemDeltaValidator<V> validator, Collection<V> oldValues) throws SchemaException
- Specified by:
validateValues
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
checkConsistence
default void checkConsistence()
- Specified by:
checkConsistence
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
checkConsistence
default void checkConsistence(ConsistencyCheckScope scope)
- Specified by:
checkConsistence
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
checkConsistence
default void checkConsistence(boolean requireDefinition, boolean prohibitRaw, ConsistencyCheckScope scope)
- Specified by:
checkConsistence
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
distributeReplace
default void distributeReplace(Collection<V> existingValues)
Description copied from interface:ItemDelta
Distributes the replace values of this delta to add and delete with respect to provided existing values.- Specified by:
distributeReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
merge
default void merge(ItemDelta<V,D> deltaToMerge)
Description copied from interface:ItemDelta
Merge specified delta to this delta. This delta is assumed to be chronologically earlier, delta provided in the parameter is chronologically later.TODO do we expect that the paths of "this" delta and deltaToMerge are the same? From the code it seems so.
- Specified by:
merge
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getValueChanges
default Collection<V> getValueChanges(PlusMinusZero mode)
- Specified by:
getValueChanges
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
simplify
default void simplify()
Description copied from interface:ItemDelta
Transforms the delta to the simplest (and safest) form. E.g. it will transform add delta for single-value properties to replace delta.- Specified by:
simplify
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
applyTo
default void applyTo(PrismContainerValue containerValue) throws SchemaException
- Specified by:
applyTo
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
applyTo
default void applyTo(Item item) throws SchemaException
- Specified by:
applyTo
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
applyToMatchingPath
default void applyToMatchingPath(Item item) throws SchemaException
Description copied from interface:ItemDelta
Applies delta to item. Assumes that path of the delta and path of the item matches (does not do path checks).- Specified by:
applyToMatchingPath
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
getSubDelta
default ItemDelta<?,?> getSubDelta(ItemPath path)
- Specified by:
getSubDelta
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isApplicableTo
default boolean isApplicableTo(Item item)
- Specified by:
isApplicableTo
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
getItemNew
default Item<V,D> getItemNew() throws SchemaException
Description copied from interface:ItemDelta
Returns the "new" state of the property - the state that would be after the delta is applied.- Specified by:
getItemNew
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
getItemNew
default Item<V,D> getItemNew(Item<V,D> itemOld) throws SchemaException
Description copied from interface:ItemDelta
Returns the "new" state of the property - the state that would be after the delta is applied.- Specified by:
getItemNew
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
getItemNewMatchingPath
default Item<V,D> getItemNewMatchingPath(Item<V,D> itemOld) throws SchemaException
- Specified by:
getItemNewMatchingPath
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
contains
default boolean contains(ItemDelta<V,D> other)
Description copied from interface:ItemDelta
Returns true if the other delta is a complete subset of this delta. I.e. if all the statements of the other delta are already contained in this delta. As a consequence it also returns true if the two deltas are equal.- Specified by:
contains
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
contains
default boolean contains(ItemDelta<V,D> other, EquivalenceStrategy strategy)
Description copied from interface:ItemDelta
Returns true if the other delta is a complete subset of this delta. I.e. if all the statements of the other delta are already contained in this delta. As a consequence it also returns true if the two deltas are equal.- Specified by:
contains
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
filterValues
default void filterValues(Function<V,Boolean> function)
- Specified by:
filterValues
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
filterYields
default void filterYields(BiFunction<V,PrismContainerValue,Boolean> function)
- Specified by:
filterYields
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
clone
default ItemDelta<V,D> clone()
- Specified by:
clone
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
cloneWithChangedParentPath
default ItemDelta<V,D> cloneWithChangedParentPath(ItemPath newParentPath)
- Specified by:
cloneWithChangedParentPath
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
toDeltaSetTriple
default PrismValueDeltaSetTriple<V> toDeltaSetTriple(Item<V,D> itemOld) throws SchemaException
- Specified by:
toDeltaSetTriple
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
assertDefinitions
default void assertDefinitions(Supplier<String> sourceDescriptionSupplier) throws SchemaException
- Specified by:
assertDefinitions
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
assertDefinitions
default void assertDefinitions(boolean tolerateRawValues, Supplier<String> sourceDescriptionSupplier) throws SchemaException
- Specified by:
assertDefinitions
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
isRaw
default boolean isRaw()
- Specified by:
isRaw
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
revive
default void revive(PrismContext prismContext) throws SchemaException
- Specified by:
revive
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
applyDefinition
default void applyDefinition(D itemDefinition, boolean force) throws SchemaException
- Specified by:
applyDefinition
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
- Throws:
SchemaException
-
equivalent
default boolean equivalent(ItemDelta other)
Description copied from interface:ItemDelta
Deltas are equivalent if they have the same result when applied to an object. I.e. meta-data and other "decorations" such as old values are not considered in this comparison.- Specified by:
equivalent
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
debugDump
default String debugDump(int indent)
- Specified by:
debugDump
in interfaceDebugDumpable
- Specified by:
debugDump
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
addToReplaceDelta
default void addToReplaceDelta()
- Specified by:
addToReplaceDelta
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
createReverseDelta
default ItemDelta<V,D> createReverseDelta()
- Specified by:
createReverseDelta
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
findValueToAddOrReplace
default V findValueToAddOrReplace(V value)
- Specified by:
findValueToAddOrReplace
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
setOriginTypeRecursive
default void setOriginTypeRecursive(OriginType originType)
Description copied from interface:ItemDelta
Set origin type to all values and subvalues- Specified by:
setOriginTypeRecursive
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
isImmutable
default boolean isImmutable()
- Specified by:
isImmutable
in interfaceFreezable
- Specified by:
isImmutable
in interfaceItemDelta<V extends PrismValue,D extends ItemDefinition<?>>
-
-