Interface PropertyDefinitionDelegator<T>
-
- All Superinterfaces:
Cloneable
,DebugDumpable
,Definition
,DefinitionDelegator
,Freezable
,ItemDefinition<PrismProperty<T>>
,ItemDefinitionDelegator<PrismProperty<T>>
,PrismContextSensitive
,PrismItemAccessDefinition
,PrismPropertyDefinition<T>
,Revivable
,Serializable
,SmartVisitable<Definition>
,Visitable<Definition>
- All Known Subinterfaces:
AttributeDefinitionDelegator<T>
,RefinedAttributeDefinitionDelegator<T>
public interface PropertyDefinitionDelegator<T> extends ItemDefinitionDelegator<PrismProperty<T>>, PrismPropertyDefinition<T>
-
-
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 default @NotNull PropertyDelta<T>
createEmptyDelta(ItemPath path)
Creates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.default T
defaultValue()
TODO is this ever used?PrismPropertyDefinition<T>
delegate()
default Collection<? extends DisplayableValue<T>>
getAllowedValues()
Returns allowed values for this property.default QName
getMatchingRuleQName()
Returns matching rule name.default Class<T>
getTypeClass()
Returns a compile-time class that is used to represent items.default @NotNull PrismProperty<T>
instantiate()
Create an item instance.default @NotNull PrismProperty<T>
instantiate(QName name)
Create an item instance.default Boolean
isIndexed()
This is XSD annotation that specifies whether a property should be indexed in the storage.-
Methods inherited from interface com.evolveum.midpoint.prism.deleg.DefinitionDelegator
accept, accept, debugDump, debugDump, debugDump, debugDumpLazily, debugDumpLazily, getAnnotation, getAnnotations, getDeprecatedSince, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMutabilityFlag, getPlannedRemoval, getPrismContext, getProcessing, getSchemaMigrations, getSchemaRegistry, getTypeClassIfKnown, 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
isMandatory, isMultiValue, isOptional, isSingleValue
-
Methods inherited from interface com.evolveum.midpoint.prism.deleg.ItemDefinitionDelegator
adoptElementDefinitionFrom, canAdd, canBeDefinitionOf, canBeDefinitionOf, canModify, canRead, debugDumpShortToString, deepClone, findItemDefinition, getDiagrams, getItemName, getMaxOccurs, getMinOccurs, getSubstitutionHead, getValueEnumerationRef, isDynamic, isHeterogeneousListItem, isIndexOnly, isInherited, isOperational, isValidFor, structuredType
-
Methods inherited from interface com.evolveum.midpoint.prism.PrismPropertyDefinition
clone, isAnyType, toMutable
-
-
-
-
Method Detail
-
delegate
PrismPropertyDefinition<T> delegate()
- Specified by:
delegate
in interfaceDefinitionDelegator
- Specified by:
delegate
in interfaceItemDefinitionDelegator<T>
-
getAllowedValues
default Collection<? extends DisplayableValue<T>> getAllowedValues()
Description copied from interface:PrismPropertyDefinition
Returns allowed values for this property.- Specified by:
getAllowedValues
in interfacePrismPropertyDefinition<T>
-
defaultValue
default T defaultValue()
Description copied from interface:PrismPropertyDefinition
TODO is this ever used?- Specified by:
defaultValue
in interfacePrismPropertyDefinition<T>
-
isIndexed
default Boolean isIndexed()
Description copied from interface:PrismPropertyDefinition
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.- Specified by:
isIndexed
in interfacePrismPropertyDefinition<T>
-
getMatchingRuleQName
default QName getMatchingRuleQName()
Description copied from interface:PrismPropertyDefinition
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.- Specified by:
getMatchingRuleQName
in interfacePrismPropertyDefinition<T>
- Returns:
- matching rule name
-
createEmptyDelta
@NotNull default @NotNull PropertyDelta<T> createEmptyDelta(ItemPath path)
Description copied from interface:ItemDefinition
Creates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.- Specified by:
createEmptyDelta
in interfaceItemDefinition<T>
- Specified by:
createEmptyDelta
in interfaceItemDefinitionDelegator<T>
- Specified by:
createEmptyDelta
in interfacePrismPropertyDefinition<T>
-
instantiate
@NotNull default @NotNull PrismProperty<T> instantiate()
Description copied from interface:ItemDefinition
Create 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:
instantiate
in interfaceItemDefinition<T>
- Specified by:
instantiate
in interfaceItemDefinitionDelegator<T>
- Specified by:
instantiate
in interfacePrismPropertyDefinition<T>
-
instantiate
@NotNull default @NotNull PrismProperty<T> instantiate(QName name)
Description copied from interface:ItemDefinition
Create an item instance. Definition name will use provided name. for the instance. The instance will otherwise be empty.- Specified by:
instantiate
in interfaceItemDefinition<T>
- Specified by:
instantiate
in interfaceItemDefinitionDelegator<T>
- Specified by:
instantiate
in interfacePrismPropertyDefinition<T>
-
getTypeClass
default Class<T> getTypeClass()
Description copied from interface:Definition
Returns 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:
getTypeClass
in interfaceDefinition
- Specified by:
getTypeClass
in interfaceDefinitionDelegator
- Specified by:
getTypeClass
in interfacePrismPropertyDefinition<T>
-
-