Class PrismContainerWrapperImpl<C extends Containerable>
java.lang.Object
com.evolveum.midpoint.gui.impl.prism.wrapper.ItemWrapperImpl<PrismContainer<C>,PrismContainerValueWrapper<C>>
 
com.evolveum.midpoint.gui.impl.prism.wrapper.PrismContainerWrapperImpl<C>
- All Implemented Interfaces:
- ItemWrapper<PrismContainer<C>,,- PrismContainerValueWrapper<C>> - PrismContainerWrapper<C>,- Definition,- Freezable,- ItemDefinition<PrismContainer<C>>,- LivePrismItemDefinition,- LocalItemDefinitionStore,- PrismContainerDefinition<C>,- PrismItemAccessDefinition,- PrismItemBasicDefinition,- PrismItemStorageDefinition,- PrismLifecycleDefinition,- PrismPresentationDefinition,- Revivable,- SchemaLookup.Aware,- SmartVisitable<Definition>,- Visitable<Definition>,- DebugDumpable,- Serializable,- Cloneable
- Direct Known Subclasses:
- AssociationAttributeMappingWrapper,- AssociationMappingExpressionWrapper,- AuthenticationBehaviorWrapper,- CaseWorkItemTypeWrapper,- ObjectTypeAttributeMappingWrapper,- PrismObjectWrapperImpl,- PrismSchemaWrapper,- ProfilingClassLoggerContainerWrapperImpl,- ShadowAssociationValueWrapper,- ShadowAssociationWrapperImpl
public class PrismContainerWrapperImpl<C extends Containerable>
extends ItemWrapperImpl<PrismContainer<C>,PrismContainerValueWrapper<C>>
implements PrismContainerWrapper<C>, Serializable 
- Author:
- katka
- See Also:
- 
Nested Class SummaryNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.DefinitionDefinition.DefinitionBuilder, Definition.DefinitionMutatorNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.ItemDefinitionItemDefinition.ItemDefinitionLikeBuilder, ItemDefinition.ItemDefinitionMutatorNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinitionPrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinitionPrismItemAccessDefinition.Data, PrismItemAccessDefinition.Delegable, PrismItemAccessDefinition.Info, PrismItemAccessDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinitionPrismItemBasicDefinition.Data, PrismItemBasicDefinition.Delegable, PrismItemBasicDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinitionPrismItemStorageDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinitionPrismLifecycleDefinition.Data, PrismLifecycleDefinition.Delegable, PrismLifecycleDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinitionPrismPresentationDefinition.Data, PrismPresentationDefinition.Delegable, PrismPresentationDefinition.Mutable
- 
Field SummaryFields inherited from interface com.evolveum.midpoint.util.DebugDumpableINDENT_STRING
- 
Constructor SummaryConstructorsConstructorDescriptionPrismContainerWrapperImpl(PrismContainerValueWrapper<?> parent, PrismContainer<C> item, ItemStatus status) 
- 
Method SummaryModifier and TypeMethodDescriptionvoidaccept(Visitor<Definition> visitor) booleanaccept(Visitor<Definition> visitor, SmartVisitation<Definition> visitation) booleancanRepresent(@NotNull QName type) TODO@NotNull PrismContainerDefinition<C>clone()cloneVirtualContainerWithNewValue(PrismContainerValueWrapper<? extends Containerable> parent, ModelServiceLocator modelServiceLocator) cloneWithNewDefinition(QName newItemName, ItemDefinition newDefinition) TODO@NotNull ItemDefinition<PrismContainer<C>>cloneWithNewName(@NotNull ItemName itemName) Returns a clone of this definition, but with name changed to the provided one.@NotNull PrismContainerDefinition<?>cloneWithNewType(@NotNull QName newTypeName, @NotNull ComplexTypeDefinition newCtd) Changes the type name and definition for this PCD.protected <D extends ItemDelta<? extends PrismValue,? extends ItemDefinition>> 
 Collection<D>@NotNull ContainerDelta<C>createEmptyDelta(ItemPath path) Creates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.protected PrismContainerValue<C>createNewEmptyValue(ModelServiceLocator locator) TODO<T extends Containerable>
 PrismContainerWrapper<T>findContainer(ItemPath path) <T extends Containerable>
 PrismContainerWrapper<T>findContainer(String identifier) findContainerValue(ItemPath path) <IW extends ItemWrapper>
 IW<ID extends ItemDefinition<?>>
 IDfindLocalItemDefinition(@NotNull QName name, @NotNull Class<ID> clazz, boolean caseInsensitive) Returns the local item definition corresponding to given item name (optionally case-insensitive) and definition class.<X> PrismPropertyWrapper<X>findProperty(ItemPath propertyPath) findReference(ItemPath path) voidfreeze()Should be no-op (or very quick) if the object is already immutable.Static (compile-time) class holding the container values.Definition of the container values.@NotNull List<? extends ItemDefinition<?>>Returns a list of item definitions in this container.<D extends ItemDelta<? extends PrismValue,? extends ItemDefinition>> 
 Collection<D>getDelta()protected ItemPathgetDeltaPathForStatus(ItemStatus status) Returns set of property definitions.@Nullable SchemaContextDefinitionPrismContainerWrapper<? extends Containerable>Returns a compile-time class that is used to represent items.booleanbooleanThis is XSD annotation that specifies whether a property should be indexed in the storage.booleanbooleanisVisible(PrismContainerValueWrapper<?> parent, ItemVisibilityHandler visibilityHandler) mutator()Returns an interface to mutate this definition.voidreplaceDefinition(QName itemName, ItemDefinition newDefinition) TODOvoidsetExpanded(boolean expanded) voidsetIdentifier(String identifier) voidsetShowEmpty(boolean isShowEmpty, boolean recursive) voidsetVirtual(boolean virtual) Methods inherited from class com.evolveum.midpoint.gui.impl.prism.wrapper.ItemWrapperImpladd, addValueToDelta, canAdd, canModify, canRead, checkRequired, computeDeltaInternal, debugDump, debugDumpShortToString, deepClone, findItemDefinition, findObjectStatus, findObjectWrapper, getAnnotation, getAnnotations, getDeprecatedSince, getDiagrams, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getFormComponentValidator, getHelp, getItem, getItemName, getMaxOccurs, getMergerIdentifier, getMergerInstance, getMinOccurs, getNaturalKeyConstituents, getNaturalKeyInstance, getOldItem, getParent, getParentContainerValue, getPath, getPlannedRemoval, getPreconditionDeltas, getProcessing, getRemovedSince, getSchemaMigrations, getStatus, getSubstitutionHead, getTypeName, getValue, getValueEnumerationRef, getValues, getVisibleOverwrite, instantiate, instantiate, isAbstract, isAlwaysUseForEquals, isColumn, isDeprecated, isDynamic, isElaborate, isEmphasized, isEmpty, isExperimental, isHeterogeneousListItem, isIgnored, isIndexOnly, isInherited, isMetadata, isOperational, isOptionalCleanup, isProcessProvenanceMetadata, isReadOnly, isRemoved, isRuntimeSchema, isShowEmpty, isShowInVirtualContainer, isShowMetadataDetails, isValidated, isValidFor, isVisibleByVisibilityHandler, remove, removeAll, removeNotChangedStatusValue, revive, setColumn, setDisplayName, setDisplayOrder, setHelp, setMetadata, setProcessProvenanceMetadata, setReadOnly, setShowInVirtualContainer, setShowMetadataDetails, setValidated, setVisibleOverwrite, structuredType, toStringMethods inherited from class java.lang.Objectequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.util.DebugDumpabledebugDump, debugDumpLazily, debugDumpLazilyMethods inherited from interface com.evolveum.midpoint.prism.DefinitioncheckMutableOnExposing, debugDump, getAnnotation, getAnnotations, getMergerIdentifier, getMergerInstance, getMutabilityFlag, getNaturalKeyConstituents, getNaturalKeyInstance, getTypeName, isAbstract, isElaborate, isOptionalCleanup, isRuntimeSchemaMethods inherited from interface com.evolveum.midpoint.prism.FreezablecheckImmutable, checkMutableMethods inherited from interface com.evolveum.midpoint.prism.ItemDefinitiondebugDumpShortToString, deepClone, getProcessing, getSubstitutionHead, getValueEnumerationRef, instantiate, instantiate, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIgnored, isInherited, isOperationalMethods inherited from interface com.evolveum.midpoint.gui.api.prism.wrapper.ItemWrapperadd, checkRequired, debugDump, findObjectStatus, findObjectWrapper, getFormComponentValidator, getItem, getParent, getParentContainerValue, getPath, getPreconditionDeltas, getValue, getValues, getVisibleOverwrite, isColumn, isEmpty, isMetadata, isProcessProvenanceMetadata, isReadOnly, isShowEmpty, isShowInVirtualContainer, isShowMetadataDetails, isValidated, remove, removeAll, setColumn, setMetadata, setProcessProvenanceMetadata, setReadOnly, setShowInVirtualContainer, setShowMetadataDetails, setValidated, setVisibleOverwriteMethods inherited from interface com.evolveum.midpoint.prism.LivePrismItemDefinitionfindItemDefinition, isValidForMethods inherited from interface com.evolveum.midpoint.prism.LocalItemDefinitionStorecontainsItemDefinition, findContainerDefinition, findItemDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinitionByIteration, findPropertyDefinition, findReferenceDefinitionMethods inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinitiongetAlwaysUseForEquals, getItemNames, isAlwaysUseForEquals, isCompletelyDefined, isEmpty, schemaLookup, structuredTypeMethods inherited from interface com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerWrappergetStatusMethods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinitioncanAdd, canModify, canRead, getInfoMethods inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinitiongetItemName, getMaxOccurs, getMinOccurs, getTypeName, isMandatory, isMultiValue, isOptional, isSingleValueMethods inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinitionisIndexOnly, isSearchableMethods inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinitiongetDeprecatedSince, getPlannedRemoval, getRemovedSince, getSchemaMigrations, isDeprecated, isExperimental, isRemovedMethods inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinitiongetDiagrams, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, isEmphasized
- 
Constructor Details- 
PrismContainerWrapperImplpublic PrismContainerWrapperImpl(PrismContainerValueWrapper<?> parent, PrismContainer<C> item, ItemStatus status) 
 
- 
- 
Method Details- 
setExpandedpublic void setExpanded(boolean expanded) - Specified by:
- setExpandedin interface- PrismContainerWrapper<C extends Containerable>
 
- 
isExpandedpublic boolean isExpanded()- Specified by:
- isExpandedin interface- PrismContainerWrapper<C extends Containerable>
 
- 
setShowEmptypublic void setShowEmpty(boolean isShowEmpty, boolean recursive) - Specified by:
- setShowEmptyin interface- ItemWrapper<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
- Overrides:
- setShowEmptyin class- ItemWrapperImpl<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
 
- 
getCompileTimeClassDescription copied from interface:PrismContainerDefinitionStatic (compile-time) class holding the container values. May be null. (Let's not mark it as @Nullable to avoid lots of warnings.)- Specified by:
- getCompileTimeClassin interface- PrismContainerDefinition<C extends Containerable>
 
- 
getComplexTypeDefinitionDescription copied from interface:PrismContainerDefinitionDefinition of the container values. May be null. (Let's not mark it as @Nullable to avoid lots of warnings.) Note that individual values can hold their own (more specific) complex type definitions.- Specified by:
- getComplexTypeDefinitionin interface- PrismContainerDefinition<C extends Containerable>
 
- 
getDefinitionsDescription copied from interface:PrismContainerDefinitionReturns a list of item definitions in this container. It is intentionally aListbecause it is ordered. (To provide standard format for serialization.) Usually obtained fromComplexTypeDefinition. So please do not modify the content of the list!- Specified by:
- getDefinitionsin interface- LocalItemDefinitionStore
- Specified by:
- getDefinitionsin interface- PrismContainerDefinition<C extends Containerable>
 
- 
findLocalItemDefinitionpublic <ID extends ItemDefinition<?>> ID findLocalItemDefinition(@NotNull @NotNull QName name, @NotNull @NotNull Class<ID> clazz, boolean caseInsensitive) Description copied from interface:LocalItemDefinitionStoreReturns the local item definition corresponding to given item name (optionally case-insensitive) and definition class. Does not try to resolve items globally (in the case of "any" content). BEWARE: In the case of ambiguities, returns any suitable definition. (This may change.)- Specified by:
- findLocalItemDefinitionin interface- LocalItemDefinitionStore
 
- 
getPropertyDefinitionsDescription copied from interface:PrismContainerDefinitionReturns set of property definitions. The set contains all property definitions of all types that were parsed. Order of definitions is insignificant. The returned collection is immutable or detached from the source. Don't try to modify it. It may fail or the changes may be lost.- Specified by:
- getPropertyDefinitionsin interface- PrismContainerDefinition<C extends Containerable>
 
- 
createEmptyDeltaDescription copied from interface:ItemDefinitionCreates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.- Specified by:
- createEmptyDeltain interface- ItemDefinition<C extends Containerable>
- Specified by:
- createEmptyDeltain interface- PrismContainerDefinition<C extends Containerable>
- Overrides:
- createEmptyDeltain class- ItemWrapperImpl<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
 
- 
clone- Specified by:
- clonein interface- Definition
- Specified by:
- clonein interface- ItemDefinition<C extends Containerable>
- Specified by:
- clonein interface- PrismContainerDefinition<C extends Containerable>
- Overrides:
- clonein class- ItemWrapperImpl<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
 
- 
cloneWithNewDefinitionpublic PrismContainerDefinition<C> cloneWithNewDefinition(QName newItemName, ItemDefinition newDefinition) Description copied from interface:PrismContainerDefinitionTODO- Specified by:
- cloneWithNewDefinitionin interface- PrismContainerDefinition<C extends Containerable>
 
- 
cloneWithNewName@NotNull public @NotNull ItemDefinition<PrismContainer<C>> cloneWithNewName(@NotNull @NotNull ItemName itemName) Description copied from interface:ItemDefinitionReturns a clone of this definition, but with name changed to the provided one.- Specified by:
- cloneWithNewNamein interface- ItemDefinition<C extends Containerable>
- See Also:
 
- 
cloneWithNewType@NotNull public @NotNull PrismContainerDefinition<?> cloneWithNewType(@NotNull @NotNull QName newTypeName, @NotNull @NotNull ComplexTypeDefinition newCtd) Description copied from interface:PrismContainerDefinitionChanges the type name and definition for this PCD. Use only in special cases.- Specified by:
- cloneWithNewTypein interface- PrismContainerDefinition<C extends Containerable>
 
- 
isIndexedDescription copied from interface:PrismItemStorageDefinitionThis is XSD annotation that specifies whether a property should be indexed in the storage. It can only apply to properties. It has following meaning: true: the property must be indexed. If the storage is not able to index the value, it should indicate an error. false: the property should not be indexed. null: data store decides whether to index the property or not.- Specified by:
- isIndexedin interface- PrismItemStorageDefinition
 
- 
replaceDefinitionDescription copied from interface:PrismContainerDefinitionTODO- Specified by:
- replaceDefinitionin interface- PrismContainerDefinition<C extends Containerable>
 
- 
createValueDescription copied from interface:PrismContainerDefinitionTODO- Specified by:
- createValuein interface- PrismContainerDefinition<C extends Containerable>
 
- 
canRepresentDescription copied from interface:PrismContainerDefinitionTODO- Specified by:
- canRepresentin interface- PrismContainerDefinition<C extends Containerable>
 
- 
mutatorDescription copied from interface:DefinitionReturns an interface to mutate this definition.- Specified by:
- mutatorin interface- Definition
- Specified by:
- mutatorin interface- ItemDefinition<C extends Containerable>
- Specified by:
- mutatorin interface- PrismContainerDefinition<C extends Containerable>
- Overrides:
- mutatorin class- ItemWrapperImpl<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
 
- 
findContainerpublic <T extends Containerable> PrismContainerWrapper<T> findContainer(ItemPath path) throws SchemaException - Specified by:
- findContainerin interface- PrismContainerWrapper<C extends Containerable>
- Throws:
- SchemaException
 
- 
findContainer- Specified by:
- findContainerin interface- PrismContainerWrapper<C extends Containerable>
 
- 
findProperty- Specified by:
- findPropertyin interface- PrismContainerWrapper<C extends Containerable>
- Throws:
- SchemaException
 
- 
findReference- Specified by:
- findReferencein interface- PrismContainerWrapper<C extends Containerable>
- Throws:
- SchemaException
 
- 
findContainerValue- Specified by:
- findContainerValuein interface- PrismContainerWrapper<C extends Containerable>
 
- 
getItemDefinition
- 
findItem- Specified by:
- findItemin interface- PrismContainerWrapper<C extends Containerable>
- Throws:
- SchemaException
 
- 
getDeltapublic <D extends ItemDelta<? extends PrismValue,? extends ItemDefinition>> Collection<D> getDelta() throws SchemaException- Specified by:
- getDeltain interface- ItemWrapper<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
- Overrides:
- getDeltain class- ItemWrapperImpl<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
- Throws:
- SchemaException
 
- 
computeDeltasInternalprotected <D extends ItemDelta<? extends PrismValue,? extends ItemDefinition>> Collection<D> computeDeltasInternal() throws SchemaException- Throws:
- SchemaException
 
- 
getDeltaPathForStatus
- 
isVisiblepublic boolean isVisible(PrismContainerValueWrapper<?> parent, ItemVisibilityHandler visibilityHandler) - Specified by:
- isVisiblein interface- ItemWrapper<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
- Overrides:
- isVisiblein class- ItemWrapperImpl<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
 
- 
setVirtualpublic void setVirtual(boolean virtual) - Specified by:
- setVirtualin interface- PrismContainerWrapper<C extends Containerable>
 
- 
isVirtualpublic boolean isVirtual()- Specified by:
- isVirtualin interface- PrismContainerWrapper<C extends Containerable>
 
- 
isImmutablepublic boolean isImmutable()- Specified by:
- isImmutablein interface- Freezable
 
- 
freezepublic void freeze()Description copied from interface:FreezableShould be no-op (or very quick) if the object is already immutable.
- 
accept- Specified by:
- acceptin interface- SmartVisitable<C extends Containerable>
- Returns:
- false if we already was here
 
- 
accept- Specified by:
- acceptin interface- Visitable<C extends Containerable>
 
- 
createNewEmptyValue- Specified by:
- createNewEmptyValuein class- ItemWrapperImpl<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
 
- 
getSelectedChild- Specified by:
- getSelectedChildin interface- PrismContainerWrapper<C extends Containerable>
 
- 
getIdentifier- Specified by:
- getIdentifierin interface- PrismContainerWrapper<C extends Containerable>
 
- 
setIdentifier- Specified by:
- setIdentifierin interface- PrismContainerWrapper<C extends Containerable>
 
- 
getTypeClassDescription copied from interface:DefinitionReturns a compile-time class that is used to represent items. E.g. returns String, Integer, subclasses of Objectable and Containerable and so on.- Specified by:
- getTypeClassin interface- Definition
- Specified by:
- getTypeClassin interface- PrismContainerDefinition<C extends Containerable>
- Overrides:
- getTypeClassin class- ItemWrapperImpl<PrismContainer<C extends Containerable>,- PrismContainerValueWrapper<C extends Containerable>> 
 
- 
getSchemaContextDefinition- Specified by:
- getSchemaContextDefinitionin interface- Definition
 
- 
cloneVirtualContainerWithNewValuepublic PrismContainerWrapper<C> cloneVirtualContainerWithNewValue(PrismContainerValueWrapper<? extends Containerable> parent, ModelServiceLocator modelServiceLocator) - Specified by:
- cloneVirtualContainerWithNewValuein interface- PrismContainerWrapper<C extends Containerable>
 
 
-