Interface ContainerDelta<V extends Containerable>
- All Superinterfaces:
DebugDumpable,Foreachable<PrismContainerValue<V>>,Freezable,Itemable,ItemDelta<PrismContainerValue<V>,,PrismContainerDefinition<V>> ParentVisitable,PathVisitable,PrismContainerable<V>,Serializable,Visitable
public interface ContainerDelta<V extends Containerable>
extends ItemDelta<PrismContainerValue<V>,PrismContainerDefinition<V>>, PrismContainerable<V>
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.delta.ItemDelta
ItemDelta.Transformer<V extends PrismValue,D extends ItemDefinition<?>> -
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING -
Method Summary
Modifier and TypeMethodDescriptionvoidapplyDefinition(@NotNull PrismContainerDefinition<V> definition) Note: this may change the implementation of the prism values in the delta.voidcheckConsistence(boolean requireDefinition, boolean prohibitRaw, ConsistencyCheckScope scope) clone()<O extends Objectable>
voidexpand(PrismObject<O> object, Trace logger) Post processing of delta to expand missing values from the object.ItemDelta<?,?> getSubDelta(ItemPath path) <T extends Containerable>
Collection<PrismContainerValue<T>>Returns all values regardless of whether they are added or removed or replaced.booleanbooleanisApplicableToType(Item item) voidsetDefinition(@NotNull PrismContainerDefinition<V> definition) TODO do we need this method publicly?Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDumpLazily, debugDumpLazilyMethods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freezeMethods inherited from interface com.evolveum.midpoint.prism.delta.ItemDelta
accept, accept, accept, addEstimatedOldValue, addEstimatedOldValues, addEstimatedOldValues, addsAnyValue, addsAnyValueMatching, addToReplaceDelta, addValuesToAdd, addValuesToAdd, addValuesToDelete, addValuesToDelete, addValueToAdd, addValueToDelete, addValueToReplace, applyDefinition, applyResults, applyTo, applyTo, applyTo, applyToMatchingPath, applyTransformer, assertDefinitions, assertDefinitions, checkConsistence, checkConsistence, clear, clearValuesToAdd, clearValuesToDelete, clearValuesToReplace, cloneWithChangedParentPath, contains, contains, containsValueToAdd, containsValueToDelete, containsValueToReplace, createReverseDelta, debugDump, distributeReplace, equals, equivalent, filterValues, filterYields, findValueToAddOrReplace, foreach, getAnyValue, getDefinition, getElementName, getEstimatedOldValues, getItemNew, getItemNew, getItemNewMatchingPath, getNewValues, getParentPath, getPath, getRealValuesToAdd, getRealValuesToDelete, getRealValuesToReplace, getValueChanges, getValues, getValuesToAdd, getValuesToDelete, getValuesToReplace, isAdd, isApplicableTo, isDelete, isEmpty, isImmutable, isLiterallyEmpty, isMetadataRelated, isOperational, isRaw, isRedundant, isReplace, isValueToAdd, isValueToDelete, isValueToReplace, merge, mergeValuesToAdd, mergeValuesToAdd, mergeValuesToDelete, mergeValuesToDelete, mergeValuesToReplace, mergeValuesToReplace, mergeValueToAdd, mergeValueToDelete, mergeValueToReplace, narrow, normalize, removeValueToAdd, removeValueToDelete, removeValueToReplace, resetValuesToAdd, resetValuesToDelete, resetValuesToReplace, revive, setElementName, setEstimatedOldValues, setOriginTypeRecursive, setParentPath, setValuesToReplace, setValuesToReplace, setValueToReplace, setValueToReplace, simplify, size, toDeltaSetTriple, toString, validate, validate, validateValues, validateValuesMethods inherited from interface com.evolveum.midpoint.prism.ParentVisitable
acceptParentVisitorMethods inherited from interface com.evolveum.midpoint.prism.PrismContainerable
getComplexTypeDefinition, getDefinition
-
Method Details
-
getItemClass
Class<PrismContainer> getItemClass()- Specified by:
getItemClassin interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
getValues
Returns all values regardless of whether they are added or removed or replaced. Useful for iterating over all the changed values. -
setDefinition
Description copied from interface:ItemDeltaTODO do we need this method publicly?- Specified by:
setDefinitionin interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
applyDefinition
void applyDefinition(@NotNull @NotNull PrismContainerDefinition<V> definition) throws SchemaException Description copied from interface:ItemDeltaNote: this may change the implementation of the prism values in the delta.- Specified by:
applyDefinitionin interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>> - Throws:
SchemaException
-
hasCompleteDefinition
boolean hasCompleteDefinition()- Specified by:
hasCompleteDefinitionin interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
getCompileTimeClass
- Specified by:
getCompileTimeClassin interfacePrismContainerable<V extends Containerable>
-
isApplicableToType
-
getSubDelta
- Specified by:
getSubDeltain interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
expand
Post processing of delta to expand missing values from the object. E.g. a delete deltas may be "id-only" so they contain only id of the value to delete. In such case locate the full value in the object and fill it into the delta. This method may even delete id-only values that are no longer present in the object.- Throws:
SchemaException
-
checkConsistence
- Specified by:
checkConsistencein interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
clone
ContainerDelta<V> clone()- Specified by:
clonein interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-