Package com.evolveum.midpoint.prism
Interface PrismPropertyDefinition<T>
-
- All Superinterfaces:
Cloneable,DebugDumpable,Definition,Freezable,ItemDefinition<PrismProperty<T>>,PrismContextSensitive,PrismItemAccessDefinition,Revivable,Serializable,SmartVisitable<Definition>,Visitable<Definition>
- All Known Subinterfaces:
AttributeDefinitionDelegator<T>,MutablePrismPropertyDefinition<T>,MutableRawResourceAttributeDefinition<T>,PartiallyMutableItemDefinition.Attribute<T>,PartiallyMutableItemDefinition.Property<T>,PrismPropertyWrapper<T>,PropertyDefinitionDelegator<T>,RawResourceAttributeDefinition<T>,RefinedAttributeDefinitionDelegator<T>,ResourceAttributeDefinition<T>,ResourceAttributeWrapper<T>
- All Known Implementing Classes:
ExpressionWrapper,PrismPropertyDefinitionImpl,PrismPropertyWrapperImpl,ProtectedStringTypeWrapperImpl,RawResourceAttributeDefinitionImpl,ResourceAttributeDefinitionImpl,ResourceAttributeWrapperImpl,TransformablePropertyDefinition,TransformablePropertyDefinition.RefinedAttribute,TransformablePropertyDefinition.ResourceAttribute
public interface PrismPropertyDefinition<T> extends ItemDefinition<PrismProperty<T>>
Definition of a prism property.
-
-
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
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description @NotNull PrismPropertyDefinition<T>clone()@NotNull PropertyDelta<T>createEmptyDelta(ItemPath path)Creates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.TdefaultValue()@Nullable Collection<? extends DisplayableValue<T>>getAllowedValues()Returns allowed values for this property.QNamegetMatchingRuleQName()Returns matching rule name.@Nullable Collection<? extends DisplayableValue<T>>getSuggestedValues()Returns suggested values for this property.Class<T>getTypeClass()Returns a compile-time class that is used to represent items.@NotNull PrismProperty<T>instantiate()Create an item instance.@NotNull PrismProperty<T>instantiate(QName name)Create an item instance.default booleanisAnyType()BooleanisIndexed()This is XSD annotation that specifies whether a property should be indexed in the storage.MutablePrismPropertyDefinition<T>toMutable()Returns an interface to mutate this definition.-
Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDump, debugDumpLazily, debugDumpLazily
-
Methods inherited from interface com.evolveum.midpoint.prism.Definition
debugDump, getAnnotation, getAnnotations, getDeprecatedSince, getDiagrams, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMutabilityFlag, getPlannedRemoval, getProcessing, getSchemaMigrations, getSchemaRegistry, getTypeName, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRuntimeSchema, setAnnotation
-
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutable
-
Methods inherited from interface com.evolveum.midpoint.prism.ItemDefinition
adoptElementDefinitionFrom, canBeDefinitionOf, canBeDefinitionOf, debugDumpShortToString, deepClone, findItemDefinition, getItemName, getMaxOccurs, getMinOccurs, getSubstitutionHead, getValueEnumerationRef, isDynamic, isHeterogeneousListItem, isIndexOnly, isInherited, isMandatory, isMultiValue, isOperational, isOptional, isSingleValue, isValidFor, structuredType
-
Methods inherited from interface com.evolveum.midpoint.prism.PrismContextSensitive
getPrismContext
-
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
canAdd, canModify, canRead
-
Methods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
accept
-
-
-
-
Method Detail
-
getAllowedValues
@Nullable @Nullable Collection<? extends DisplayableValue<T>> getAllowedValues()
Returns allowed values for this property.
-
getSuggestedValues
@Nullable @Nullable Collection<? extends DisplayableValue<T>> getSuggestedValues()
Returns suggested values for this property.
-
defaultValue
@Nullable T defaultValue()
-
isIndexed
Boolean isIndexed()
This 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.
-
isAnyType
default boolean isAnyType()
-
getMatchingRuleQName
QName getMatchingRuleQName()
Returns 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.- Returns:
- matching rule name
-
createEmptyDelta
@NotNull @NotNull PropertyDelta<T> createEmptyDelta(ItemPath path)
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>
-
instantiate
@NotNull @NotNull PrismProperty<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>
-
instantiate
@NotNull @NotNull PrismProperty<T> instantiate(QName name)
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>
-
clone
@NotNull @NotNull PrismPropertyDefinition<T> clone()
- Specified by:
clonein interfaceDefinition- Specified by:
clonein interfaceItemDefinition<T>
-
getTypeClass
Class<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
-
toMutable
MutablePrismPropertyDefinition<T> toMutable()
Description copied from interface:DefinitionReturns an interface to mutate this definition.- Specified by:
toMutablein interfaceDefinition- Specified by:
toMutablein interfaceItemDefinition<T>
-
-