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>>,LocalItemDefinitionStore,PrismContainerDefinition<C>,PrismContextSensitive,PrismItemAccessDefinition,Revivable,SmartVisitable<Definition>,Visitable<Definition>,DebugDumpable,Serializable,Cloneable
- Direct Known Subclasses:
AuthenticationBehaviorWrapper,CaseWorkItemTypeWrapper,PrismObjectWrapperImpl,ProfilingClassLoggerContainerWrapperImpl,ResourceAttributeMappingWrapper,ShadowAssociationWrapperImpl
public class PrismContainerWrapperImpl<C extends Containerable>
extends ItemWrapperImpl<PrismContainer<C>,PrismContainerValueWrapper<C>>
implements PrismContainerWrapper<C>, Serializable
- Author:
- katka
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
PrismItemAccessDefinition.Mutable -
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING -
Constructor Summary
ConstructorsConstructorDescriptionPrismContainerWrapperImpl(PrismContainerValueWrapper<?> parent, PrismContainer<C> item, ItemStatus status) -
Method Summary
Modifier 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) cloneWithReplacedDefinition(QName itemName, ItemDefinition newDefinition) TODOprotected <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<X> PrismPropertyWrapper<X>findProperty(ItemPath propertyPath) findReference(ItemPath path) voidfreeze()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.PrismContainerWrapper<? extends Containerable>Returns a compile-time class that is used to represent items.booleanbooleanbooleanbooleanisVisible(PrismContainerValueWrapper<?> parent, ItemVisibilityHandler visibilityHandler) voidreplaceDefinition(QName itemName, ItemDefinition newDefinition) TODOvoidsetExpanded(boolean expanded) voidsetIdentifier(String identifier) voidsetShowEmpty(boolean isShowEmpty, boolean recursive) voidsetVirtual(boolean virtual) Returns an interface to mutate this definition.Methods inherited from class com.evolveum.midpoint.gui.impl.prism.wrapper.ItemWrapperImpl
add, addIgnoringEquivalents, addValueToDelta, adoptElementDefinitionFrom, canAdd, canBeDefinitionOf, canBeDefinitionOf, canModify, canRead, checkRequired, computeDeltaInternal, debugDump, debugDumpShortToString, deepClone, findItemDefinition, findObjectStatus, findObjectWrapper, getAnnotation, getAnnotations, getDeprecatedSince, getDiagrams, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getFormComponentValidator, getHelp, getItem, getItemName, getMaxOccurs, getMinOccurs, getOldItem, getParent, getParentContainerValue, getPath, getPlannedRemoval, getPrismContext, getProcessing, getRemovedSince, getSchemaMigrations, getStatus, getSubstitutionHead, getTypeName, getValue, getValueEnumerationRef, getValues, getVisibleOverwrite, instantiate, instantiate, isAbstract, isColumn, isDeprecated, isDynamic, isElaborate, isEmphasized, isEmpty, isExperimental, isHeterogeneousListItem, isIgnored, isIndexOnly, isInherited, isMetadata, isOperational, isProcessProvenanceMetadata, isReadOnly, isRemoved, isRuntimeSchema, isShowEmpty, isShowInVirtualContainer, isShowMetadataDetails, isValidated, isValidFor, isVisibleByVisibilityHandler, remove, removeAll, removeNotChangedStatusValue, revive, setAnnotation, setColumn, setDisplayName, setDisplayOrder, setMetadata, setProcessProvenanceMetadata, setReadOnly, setShowInVirtualContainer, setShowMetadataDetails, setValidated, setVisibleOverwrite, structuredTypeMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDumpLazily, debugDumpLazilyMethods inherited from interface com.evolveum.midpoint.prism.Definition
debugDump, getAnnotation, getAnnotations, getDeprecatedSince, getDiagrams, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMutabilityFlag, getPlannedRemoval, getProcessing, getRemovedSince, getSchemaMigrations, getSchemaRegistry, getTypeName, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRemoved, isRuntimeSchema, setAnnotationMethods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutableMethods inherited from interface com.evolveum.midpoint.prism.ItemDefinition
adoptElementDefinitionFrom, canBeDefinitionOf, canBeDefinitionOf, debugDumpShortToString, deepClone, findItemDefinition, getItemName, getMaxOccurs, getMinOccurs, getSubstitutionHead, getValueEnumerationRef, instantiate, instantiate, isDynamic, isHeterogeneousListItem, isIndexOnly, isInherited, isMandatory, isMultiValue, isOperational, isOptional, isSearchable, isSingleValue, isValidForMethods inherited from interface com.evolveum.midpoint.gui.api.prism.wrapper.ItemWrapper
add, addIgnoringEquivalents, checkRequired, debugDump, findObjectStatus, findObjectWrapper, getFormComponentValidator, getItem, getParent, getParentContainerValue, getPath, 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.LocalItemDefinitionStore
containsItemDefinition, findContainerDefinition, findItemDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinition, findPropertyDefinition, findReferenceDefinitionMethods inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinition
getAlwaysUseForEquals, getItemNames, isAlwaysUseForEquals, isCompletelyDefined, isEmpty, structuredTypeMethods inherited from interface com.evolveum.midpoint.gui.api.prism.wrapper.PrismContainerWrapper
getStatusMethods inherited from interface com.evolveum.midpoint.prism.PrismContextSensitive
getPrismContextMethods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
canAdd, canModify, canRead
-
Constructor Details
-
PrismContainerWrapperImpl
public PrismContainerWrapperImpl(PrismContainerValueWrapper<?> parent, PrismContainer<C> item, ItemStatus status)
-
-
Method Details
-
setExpanded
public void setExpanded(boolean expanded) - Specified by:
setExpandedin interfacePrismContainerWrapper<C extends Containerable>
-
isExpanded
public boolean isExpanded()- Specified by:
isExpandedin interfacePrismContainerWrapper<C extends Containerable>
-
setShowEmpty
public void setShowEmpty(boolean isShowEmpty, boolean recursive) - Specified by:
setShowEmptyin interfaceItemWrapper<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>> - Overrides:
setShowEmptyin classItemWrapperImpl<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>>
-
getCompileTimeClass
Description 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 interfacePrismContainerDefinition<C extends Containerable>
-
getComplexTypeDefinition
Description 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 interfacePrismContainerDefinition<C extends Containerable>
-
getDefinitions
Description 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 interfaceLocalItemDefinitionStore- Specified by:
getDefinitionsin interfacePrismContainerDefinition<C extends Containerable>
-
getPropertyDefinitions
Description 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 set is immutable! All changes may be lost.- Specified by:
getPropertyDefinitionsin interfacePrismContainerDefinition<C extends Containerable>- Returns:
- set of definitions
-
createEmptyDelta
Description copied from interface:ItemDefinitionCreates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.- Specified by:
createEmptyDeltain interfaceItemDefinition<C extends Containerable>- Specified by:
createEmptyDeltain interfacePrismContainerDefinition<C extends Containerable>- Overrides:
createEmptyDeltain classItemWrapperImpl<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>>
-
clone
- Specified by:
clonein interfaceDefinition- Specified by:
clonein interfaceItemDefinition<C extends Containerable>- Specified by:
clonein interfacePrismContainerDefinition<C extends Containerable>- Overrides:
clonein classItemWrapperImpl<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>>
-
cloneWithReplacedDefinition
public PrismContainerDefinition<C> cloneWithReplacedDefinition(QName itemName, ItemDefinition newDefinition) Description copied from interface:PrismContainerDefinitionTODO- Specified by:
cloneWithReplacedDefinitionin interfacePrismContainerDefinition<C extends Containerable>
-
replaceDefinition
Description copied from interface:PrismContainerDefinitionTODO- Specified by:
replaceDefinitionin interfacePrismContainerDefinition<C extends Containerable>
-
createValue
Description copied from interface:PrismContainerDefinitionTODO- Specified by:
createValuein interfacePrismContainerDefinition<C extends Containerable>
-
canRepresent
Description copied from interface:PrismContainerDefinitionTODO- Specified by:
canRepresentin interfacePrismContainerDefinition<C extends Containerable>
-
toMutable
Description copied from interface:DefinitionReturns an interface to mutate this definition.- Specified by:
toMutablein interfaceDefinition- Specified by:
toMutablein interfaceItemDefinition<C extends Containerable>- Specified by:
toMutablein interfacePrismContainerDefinition<C extends Containerable>- Overrides:
toMutablein classItemWrapperImpl<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>>
-
findContainer
public <T extends Containerable> PrismContainerWrapper<T> findContainer(ItemPath path) throws SchemaException - Specified by:
findContainerin interfacePrismContainerWrapper<C extends Containerable>- Throws:
SchemaException
-
findContainer
- Specified by:
findContainerin interfacePrismContainerWrapper<C extends Containerable>
-
findProperty
- Specified by:
findPropertyin interfacePrismContainerWrapper<C extends Containerable>- Throws:
SchemaException
-
findReference
- Specified by:
findReferencein interfacePrismContainerWrapper<C extends Containerable>- Throws:
SchemaException
-
findContainerValue
- Specified by:
findContainerValuein interfacePrismContainerWrapper<C extends Containerable>
-
getItemDefinition
-
findItem
- Specified by:
findItemin interfacePrismContainerWrapper<C extends Containerable>- Throws:
SchemaException
-
getDelta
public <D extends ItemDelta<? extends PrismValue,? extends ItemDefinition>> Collection<D> getDelta() throws SchemaException- Specified by:
getDeltain interfaceItemWrapper<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>> - Overrides:
getDeltain classItemWrapperImpl<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>> - Throws:
SchemaException
-
computeDeltasInternal
protected <D extends ItemDelta<? extends PrismValue,? extends ItemDefinition>> Collection<D> computeDeltasInternal() throws SchemaException- Throws:
SchemaException
-
getDeltaPathForStatus
-
isVisible
public boolean isVisible(PrismContainerValueWrapper<?> parent, ItemVisibilityHandler visibilityHandler) - Specified by:
isVisiblein interfaceItemWrapper<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>> - Overrides:
isVisiblein classItemWrapperImpl<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>>
-
setVirtual
public void setVirtual(boolean virtual) - Specified by:
setVirtualin interfacePrismContainerWrapper<C extends Containerable>
-
isVirtual
public boolean isVirtual()- Specified by:
isVirtualin interfacePrismContainerWrapper<C extends Containerable>
-
isImmutable
public boolean isImmutable()- Specified by:
isImmutablein interfaceFreezable
-
freeze
public void freeze() -
accept
- Specified by:
acceptin interfaceSmartVisitable<C extends Containerable>- Returns:
- false if we already was here
-
accept
- Specified by:
acceptin interfaceVisitable<C extends Containerable>
-
createNewEmptyValue
- Specified by:
createNewEmptyValuein classItemWrapperImpl<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>>
-
getSelectedChild
- Specified by:
getSelectedChildin interfacePrismContainerWrapper<C extends Containerable>
-
getIdentifier
- Specified by:
getIdentifierin interfacePrismContainerWrapper<C extends Containerable>
-
setIdentifier
- Specified by:
setIdentifierin interfacePrismContainerWrapper<C extends Containerable>
-
getTypeClass
Description 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 interfaceDefinition- Specified by:
getTypeClassin interfacePrismContainerDefinition<C extends Containerable>- Overrides:
getTypeClassin classItemWrapperImpl<PrismContainer<C extends Containerable>,PrismContainerValueWrapper<C extends Containerable>>
-
cloneVirtualContainerWithNewValue
public PrismContainerWrapper<C> cloneVirtualContainerWithNewValue(PrismContainerValueWrapper<? extends Containerable> parent, ModelServiceLocator modelServiceLocator) - Specified by:
cloneVirtualContainerWithNewValuein interfacePrismContainerWrapper<C extends Containerable>
-