Interface DeltaSetTriple<T>
- All Superinterfaces:
- DebugDumpable,- Foreachable<T>,- Serializable,- ShortDumpable,- SimpleVisitable<T>
- All Known Subinterfaces:
- PrismValueDeltaSetTriple<V>
- All Known Implementing Classes:
- AbstractDelegatedPrismValueDeltaSetTriple,- DeltaSetTripleImpl,- PrismValueDeltaSetTripleImpl,- SourceTriple
public interface DeltaSetTriple<T>
extends DebugDumpable, ShortDumpable, Serializable, SimpleVisitable<T>, Foreachable<T>
The triple of values (added, unchanged, deleted) that represents difference between two collections of values.
 
The DeltaSetTriple is used as a result of a "diff" operation or it is constructed to determine a ObjectDelta or PropertyDelta. It is a very useful structure in numerous situations when dealing with relative changes.
DeltaSetTriple (similarly to other parts of this system) deal only with unordered values.
- Author:
- Radovan Semancik
- 
Field SummaryFields inherited from interface com.evolveum.midpoint.util.DebugDumpableINDENT_STRING
- 
Method SummaryModifier and TypeMethodDescriptionvoidaddAllToMinusSet(Collection<T> items) voidaddAllToPlusSet(Collection<T> items) voidaddAllToSet(PlusMinusZero destination, Collection<T> items) voidaddAllToZeroSet(Collection<T> items) voidaddToMinusSet(T item) voidaddToPlusSet(T item) voidaddToSet(PlusMinusZero destination, T item) voidaddToZeroSet(T item) default voidclear()voidvoidvoidvoiddebugDumpSets(StringBuilder sb, Consumer<T> dumper, int indent) static <T> DeltaSetTriple<T>diff(Collection<T> valuesOld, Collection<T> valuesNew, PrismContext prismContext) Compares two (unordered) collections and creates a triple describing the differences.voidProcess each element of every set.@NotNull Collection<T>@NotNull Collection<T>@NotNull Collection<T>@NotNull Collection<T>getSet(PlusMinusZero whichSet) @NotNull Collection<T>booleanbooleanbooleanbooleanisEmpty()booleanvoidmerge(DeltaSetTriple<T> triple) booleanpresentInMinusSet(T item) booleanpresentInPlusSet(T item) booleanpresentInZeroSet(T item) voidsimpleAccept(SimpleVisitor<T> visitor) intsize()stream()<X> voidtransform(DeltaSetTriple<X> transformTarget, Transformer<T, X> transformer) union()Returns all values, regardless of the internal sets.Methods inherited from interface com.evolveum.midpoint.util.DebugDumpabledebugDump, debugDump, debugDumpLazily, debugDumpLazilyMethods inherited from interface com.evolveum.midpoint.util.ShortDumpableshortDump, shortDump, shortDumpLazily
- 
Method Details- 
diffstatic <T> DeltaSetTriple<T> diff(Collection<T> valuesOld, Collection<T> valuesNew, PrismContext prismContext) Compares two (unordered) collections and creates a triple describing the differences.
- 
getZeroSet
- 
getPlusSet
- 
getMinusSet
- 
hasPlusSetboolean hasPlusSet()
- 
hasZeroSetboolean hasZeroSet()
- 
hasMinusSetboolean hasMinusSet()
- 
isZeroOnlyboolean isZeroOnly()
- 
addToPlusSet
- 
addToMinusSet
- 
addToZeroSet
- 
addAllToPlusSet
- 
addAllToMinusSet
- 
addAllToZeroSet
- 
getSet
- 
addAllToSet
- 
addToSet
- 
presentInPlusSet
- 
presentInMinusSet
- 
presentInZeroSet
- 
clearPlusSetvoid clearPlusSet()
- 
clearMinusSetvoid clearMinusSet()
- 
clearZeroSetvoid clearZeroSet()
- 
sizeint size()
- 
unionCollection<T> union()Returns all values, regardless of the internal sets.
- 
getAnyValueT getAnyValue()
- 
getAllValuesCollection<T> getAllValues()
- 
stream
- 
getNonNegativeValues
- 
getNonPositiveValues
- 
merge
- 
clone
- 
isEmptyboolean isEmpty()
- 
foreachProcess each element of every set. This is different from the visitor. Visitor will go deep inside, foreach will remain on the surface.- Specified by:
- foreachin interface- Foreachable<T>
 
- 
simpleAccept- Specified by:
- simpleAcceptin interface- SimpleVisitable<T>
 
- 
transform
- 
debugDumpSets
- 
toHumanReadableStringString toHumanReadableString()
- 
cleardefault void clear()
 
-