Class PrismPropertyWrapperImpl<T>
java.lang.Object
com.evolveum.midpoint.gui.impl.prism.wrapper.ItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
com.evolveum.midpoint.gui.impl.prism.wrapper.PrismPropertyWrapperImpl<T>
- All Implemented Interfaces:
ItemWrapper<PrismProperty<T>,,PrismPropertyValueWrapper<T>> PrismPropertyWrapper<T>,Definition,Freezable,ItemDefinition<PrismProperty<T>>,LivePrismItemDefinition,PrismItemAccessDefinition,PrismItemBasicDefinition,PrismItemInstantiableDefinition<T,,PrismPropertyValue<T>, PrismProperty<T>, PrismPropertyDefinition<T>, PropertyDelta<T>> PrismItemMatchingDefinition<T>,PrismItemStorageDefinition,PrismItemValuesDefinition<T>,PrismLifecycleDefinition,PrismPresentationDefinition,PrismPropertyDefinition<T>,Revivable,SchemaLookup.Aware,SmartVisitable<Definition>,Visitable<Definition>,DebugDumpable,Serializable,Cloneable
- Direct Known Subclasses:
AuthenticationAttemptWrapper,ExpressionWrapper,ProtectedStringTypeWrapperImpl,ResourceAttributeWrapperImpl
public class PrismPropertyWrapperImpl<T>
extends ItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
implements PrismPropertyWrapper<T>
- Author:
- katka
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.Definition
Definition.DefinitionBuilder, Definition.DefinitionMutatorNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.ItemDefinition
ItemDefinition.ItemDefinitionLikeBuilder, ItemDefinition.ItemDefinitionMutatorNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
PrismItemAccessDefinition.Data, PrismItemAccessDefinition.Delegable, PrismItemAccessDefinition.Info, PrismItemAccessDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinition
PrismItemBasicDefinition.Data, PrismItemBasicDefinition.Delegable, PrismItemBasicDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemMatchingDefinition
PrismItemMatchingDefinition.Data<T>, PrismItemMatchingDefinition.Delegable<T>, PrismItemMatchingDefinition.MutatorNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition
PrismItemStorageDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemValuesDefinition
PrismItemValuesDefinition.Data<T>, PrismItemValuesDefinition.Delegable<T>, PrismItemValuesDefinition.Mutator<T>Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
PrismLifecycleDefinition.Data, PrismLifecycleDefinition.Delegable, PrismLifecycleDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
PrismPresentationDefinition.Data, PrismPresentationDefinition.Delegable, PrismPresentationDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismPropertyDefinition
PrismPropertyDefinition.PrismPropertyDefinitionMutator<T>, PrismPropertyDefinition.PrismPropertyLikeDefinitionBuilder<T> -
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING -
Constructor Summary
ConstructorsConstructorDescriptionPrismPropertyWrapperImpl(PrismContainerValueWrapper<?> parent, PrismProperty<T> item, ItemStatus status) -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(Visitor<Definition> visitor) booleanaccept(Visitor<Definition> visitor, SmartVisitation<Definition> visitation) @NotNull PrismPropertyDefinition<T>clone()@NotNull ItemDefinition<PrismProperty<T>>cloneWithNewName(@NotNull ItemName itemName) Returns a clone of this definition, but with name changed to the provided one.@NotNull PropertyDelta<T>createEmptyDelta(ItemPath path) Creates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.protected PrismPropertyValue<T>createNewEmptyValue(ModelServiceLocator locator) voidfreeze()Should be no-op (or very quick) if the object is already immutable.Collection<? extends DisplayableValue<T>>Returns allowed values for this property.<D extends ItemDelta<? extends PrismValue,? extends ItemDefinition>>
Collection<D>getDelta()@NotNull MatchingRule<T>Returns the resolvedMatchingRulefor this property.Returns matching rule name.@Nullable SchemaContextDefinitionCollection<? extends DisplayableValue<T>>Returns suggested values for this property.Returns a compile-time class that is used to represent items.@NotNull PrismProperty<T>Create an item instance.@NotNull PrismProperty<T>instantiate(QName name) Create an item instance.booleanisEmpty()booleanThis is XSD annotation that specifies whether a property should be indexed in the storage.mutator()Returns an interface to mutate this definition.protected voidremoveNotChangedStatusValue(PrismPropertyValueWrapper<T> valueWrapper, Item rawItem) voidsetMuteDeltaCreate(boolean muteDeltaCreate) voidsetPredefinedValuesOid(String predefinedValuesOid) Methods inherited from class com.evolveum.midpoint.gui.impl.prism.wrapper.ItemWrapperImpl
add, addIgnoringEquivalents, 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, isAbstract, isAlwaysUseForEquals, isColumn, isDeprecated, isDynamic, isElaborate, isEmphasized, isExperimental, isHeterogeneousListItem, isIgnored, isIndexOnly, isInherited, isMetadata, isOperational, isOptionalCleanup, isProcessProvenanceMetadata, isReadOnly, isRemoved, isRuntimeSchema, isShowEmpty, isShowInVirtualContainer, isShowMetadataDetails, isValidated, isValidFor, isVisible, isVisibleByVisibilityHandler, remove, removeAll, revive, setColumn, setDisplayName, setDisplayOrder, setHelp, setMetadata, setProcessProvenanceMetadata, setReadOnly, setShowEmpty, setShowInVirtualContainer, setShowMetadataDetails, setValidated, setVisibleOverwrite, structuredType, toStringMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDumpLazily, debugDumpLazilyMethods inherited from interface com.evolveum.midpoint.prism.Definition
checkMutableOnExposing, debugDump, getAnnotation, getAnnotations, getMergerIdentifier, getMergerInstance, getMutabilityFlag, getNaturalKeyConstituents, getNaturalKeyInstance, getTypeName, isAbstract, isElaborate, isOptionalCleanup, isRuntimeSchemaMethods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutableMethods inherited from interface com.evolveum.midpoint.prism.ItemDefinition
debugDumpShortToString, deepClone, getProcessing, getSubstitutionHead, getValueEnumerationRef, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIgnored, isInherited, isOperational, structuredTypeMethods inherited from interface com.evolveum.midpoint.gui.api.prism.wrapper.ItemWrapper
add, addIgnoringEquivalents, checkRequired, debugDump, findObjectStatus, findObjectWrapper, getFormComponentValidator, getItem, getParent, getParentContainerValue, getPath, getPreconditionDeltas, getStatus, getValue, getValues, getVisibleOverwrite, isColumn, isMetadata, isProcessProvenanceMetadata, isReadOnly, isShowEmpty, isShowInVirtualContainer, isShowMetadataDetails, isValidated, isVisible, remove, removeAll, setColumn, setMetadata, setProcessProvenanceMetadata, setReadOnly, setShowEmpty, setShowInVirtualContainer, setShowMetadataDetails, setValidated, setVisibleOverwriteMethods inherited from interface com.evolveum.midpoint.prism.LivePrismItemDefinition
findItemDefinition, isValidForMethods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
canAdd, canModify, canRead, getInfoMethods inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinition
getItemName, getMaxOccurs, getMinOccurs, getTypeName, isMandatory, isMultiValue, isOptional, isSingleValueMethods inherited from interface com.evolveum.midpoint.prism.PrismItemMatchingDefinition
getNormalizer, getStringNormalizerForPolyStringProperty, getStringNormalizerIfApplicable, getTypeName, isCustomPolyStringMethods inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition
isIndexOnly, isSearchableMethods inherited from interface com.evolveum.midpoint.prism.PrismItemValuesDefinition
getValueEnumerationRefMethods inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
getDeprecatedSince, getPlannedRemoval, getRemovedSince, getSchemaMigrations, isDeprecated, isExperimental, isRemovedMethods inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
getDiagrams, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, isEmphasizedMethods inherited from interface com.evolveum.midpoint.prism.PrismPropertyDefinition
convertStringValueToPolyString, getTypeClassLegacy, isAnyTypeMethods inherited from interface com.evolveum.midpoint.prism.schema.SchemaLookup.Aware
schemaLookup
-
Constructor Details
-
PrismPropertyWrapperImpl
public PrismPropertyWrapperImpl(PrismContainerValueWrapper<?> parent, PrismProperty<T> item, ItemStatus status)
-
-
Method Details
-
getAllowedValues
Description copied from interface:PrismItemValuesDefinitionReturns allowed values for this property.- Specified by:
getAllowedValuesin interfacePrismItemValuesDefinition<T>
-
getSuggestedValues
Description copied from interface:PrismItemValuesDefinitionReturns suggested values for this property.- Specified by:
getSuggestedValuesin interfacePrismItemValuesDefinition<T>
-
defaultValue
- Specified by:
defaultValuein interfacePrismItemValuesDefinition<T>
-
isIndexed
Description 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 interfacePrismItemStorageDefinition
-
getMatchingRuleQName
Description copied from interface:PrismItemMatchingDefinitionReturns matching rule name. Matching rules are algorithms that specify how to compare, normalize and/or order the values. E.g. there are matching rules for case insensitive string comparison, for LDAP DNs, etc. TODO describe the semantics where special normalizations are to be used Use with care until this description is complete.- Specified by:
getMatchingRuleQNamein interfacePrismItemMatchingDefinition<T>- Returns:
- matching rule name
-
getMatchingRule
Description copied from interface:PrismItemMatchingDefinitionReturns the resolvedMatchingRulefor this property.- Specified by:
getMatchingRulein interfacePrismItemMatchingDefinition<T>
-
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<T>- Specified by:
createEmptyDeltain interfacePrismItemInstantiableDefinition<T,PrismPropertyValue<T>, PrismProperty<T>, PrismPropertyDefinition<T>, PropertyDelta<T>> - Overrides:
createEmptyDeltain classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
-
clone
- Specified by:
clonein interfaceDefinition- Specified by:
clonein interfaceItemDefinition<T>- Specified by:
clonein interfacePrismPropertyDefinition<T>- Overrides:
clonein classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
-
cloneWithNewName
@NotNull public @NotNull ItemDefinition<PrismProperty<T>> 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 interfaceItemDefinition<T>- See Also:
-
mutator
Description copied from interface:DefinitionReturns an interface to mutate this definition.- Specified by:
mutatorin interfaceDefinition- Specified by:
mutatorin interfaceItemDefinition<T>- Specified by:
mutatorin interfacePrismPropertyDefinition<T>- Overrides:
mutatorin classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
-
instantiate
Description copied from interface:ItemDefinitionCreate an item instance. Definition name or default name will be used as an element name for the instance. The instance will otherwise be empty.- Specified by:
instantiatein interfaceItemDefinition<T>- Specified by:
instantiatein interfacePrismItemInstantiableDefinition<T,PrismPropertyValue<T>, PrismProperty<T>, PrismPropertyDefinition<T>, PropertyDelta<T>> - Overrides:
instantiatein classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
-
instantiate
Description copied from interface:ItemDefinitionCreate an item instance. Definition name will use provided name. for the instance. The instance will otherwise be empty.- Specified by:
instantiatein interfaceItemDefinition<T>- Specified by:
instantiatein interfacePrismItemInstantiableDefinition<T,PrismPropertyValue<T>, PrismProperty<T>, PrismPropertyDefinition<T>, PropertyDelta<T>> - Overrides:
instantiatein classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
-
getPredefinedValuesOid
- Specified by:
getPredefinedValuesOidin interfacePrismPropertyWrapper<T>
-
setPredefinedValuesOid
- Specified by:
setPredefinedValuesOidin interfacePrismPropertyWrapper<T>
-
isEmpty
public boolean isEmpty()- Specified by:
isEmptyin interfaceItemWrapper<PrismProperty<T>,PrismPropertyValueWrapper<T>> - Overrides:
isEmptyin classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
-
getItemDefinition
-
isImmutable
public boolean isImmutable()- Specified by:
isImmutablein interfaceFreezable
-
freeze
public void freeze()Description copied from interface:FreezableShould be no-op (or very quick) if the object is already immutable. -
accept
- Specified by:
acceptin interfaceSmartVisitable<T>- Returns:
- false if we already was here
-
accept
-
removeNotChangedStatusValue
- Overrides:
removeNotChangedStatusValuein classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
-
createNewEmptyValue
- Specified by:
createNewEmptyValuein classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
-
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 interfacePrismItemMatchingDefinition<T>- Specified by:
getTypeClassin interfacePrismPropertyDefinition<T>- Overrides:
getTypeClassin classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>>
-
getSchemaContextDefinition
- Specified by:
getSchemaContextDefinitionin interfaceDefinition
-
setMuteDeltaCreate
public void setMuteDeltaCreate(boolean muteDeltaCreate) -
getDelta
public <D extends ItemDelta<? extends PrismValue,? extends ItemDefinition>> Collection<D> getDelta() throws SchemaException- Specified by:
getDeltain interfaceItemWrapper<PrismProperty<T>,PrismPropertyValueWrapper<T>> - Overrides:
getDeltain classItemWrapperImpl<PrismProperty<T>,PrismPropertyValueWrapper<T>> - Throws:
SchemaException
-