Interface ContainerDelta<V extends Containerable>
-
- All Superinterfaces:
DebugDumpable
,Foreachable<PrismContainerValue<V>>
,Freezable
,Itemable
,ItemDelta<PrismContainerValue<V>,PrismContainerDefinition<V>>
,ParentVisitable
,PathVisitable
,PrismContainerable<V>
,PrismContextSensitive
,Serializable
,Visitable
- All Known Implementing Classes:
ContainerDeltaImpl
public interface ContainerDelta<V extends Containerable> extends ItemDelta<PrismContainerValue<V>,PrismContainerDefinition<V>>, PrismContainerable<V>
-
-
Field Summary
-
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
applyDefinition(PrismContainerDefinition<V> definition)
void
checkConsistence(boolean requireDefinition, boolean prohibitRaw, ConsistencyCheckScope scope)
ContainerDelta<V>
clone()
<O extends Objectable>
voidexpand(PrismObject<O> object, Trace logger)
Post processing of delta to expand missing values from the object.Class<V>
getCompileTimeClass()
Class<PrismContainer>
getItemClass()
ItemDelta<?,?>
getSubDelta(ItemPath path)
<T extends Containerable>
Collection<PrismContainerValue<T>>getValues(Class<T> type)
Returns all values regardless of whether they are added or removed or replaced.boolean
hasCompleteDefinition()
boolean
isApplicableToType(Item item)
void
setDefinition(PrismContainerDefinition<V> definition)
-
Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDumpLazily, debugDumpLazily
-
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze
-
Methods inherited from interface com.evolveum.midpoint.prism.delta.ItemDelta
accept, accept, accept, addEstimatedOldValue, addEstimatedOldValues, addEstimatedOldValues, addsAnyValue, addToReplaceDelta, addValuesToAdd, addValuesToAdd, addValuesToDelete, addValuesToDelete, addValueToAdd, addValueToDelete, addValueToReplace, applyDefinition, applyTo, applyTo, applyToMatchingPath, assertDefinitions, assertDefinitions, checkConsistence, checkConsistence, clear, clearValuesToAdd, clearValuesToDelete, clearValuesToReplace, cloneWithChangedParentPath, contains, contains, createReverseDelta, debugDump, distributeReplace, equals, equivalent, filterValues, filterYields, findValueToAddOrReplace, foreach, getAnyValue, getDefinition, getElementName, getEstimatedOldValues, getItemNew, getItemNew, getItemNewMatchingPath, getParentPath, getPath, getRealValuesToAdd, getRealValuesToDelete, getRealValuesToReplace, getValueChanges, getValuesToAdd, getValuesToDelete, getValuesToReplace, isAdd, isApplicableTo, isDelete, isEmpty, isImmutable, isLiterallyEmpty, 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, validateValues
-
Methods inherited from interface com.evolveum.midpoint.prism.ParentVisitable
acceptParentVisitor
-
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainerable
getComplexTypeDefinition, getDefinition
-
Methods inherited from interface com.evolveum.midpoint.prism.PrismContextSensitive
getPrismContext
-
-
-
-
Method Detail
-
getItemClass
Class<PrismContainer> getItemClass()
- Specified by:
getItemClass
in interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
getValues
<T extends Containerable> Collection<PrismContainerValue<T>> getValues(Class<T> type)
Returns all values regardless of whether they are added or removed or replaced. Useful for iterating over all the changed values.
-
setDefinition
void setDefinition(PrismContainerDefinition<V> definition)
- Specified by:
setDefinition
in interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
applyDefinition
void applyDefinition(PrismContainerDefinition<V> definition) throws SchemaException
- Specified by:
applyDefinition
in interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
- Throws:
SchemaException
-
hasCompleteDefinition
boolean hasCompleteDefinition()
- Specified by:
hasCompleteDefinition
in interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
getCompileTimeClass
Class<V> getCompileTimeClass()
- Specified by:
getCompileTimeClass
in interfacePrismContainerable<V extends Containerable>
-
isApplicableToType
boolean isApplicableToType(Item item)
-
getSubDelta
ItemDelta<?,?> getSubDelta(ItemPath path)
- Specified by:
getSubDelta
in interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
expand
<O extends Objectable> void expand(PrismObject<O> object, Trace logger) throws SchemaException
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
void checkConsistence(boolean requireDefinition, boolean prohibitRaw, ConsistencyCheckScope scope)
- Specified by:
checkConsistence
in interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
clone
ContainerDelta<V> clone()
- Specified by:
clone
in interfaceItemDelta<PrismContainerValue<V extends Containerable>,PrismContainerDefinition<V extends Containerable>>
-
-