Interface PropertyDefinitionDelegator<T>
- All Superinterfaces:
Cloneable,DebugDumpable,Definition,DefinitionDelegator,Freezable,ItemDefinition<PrismProperty<T>>,ItemDefinitionDelegator<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,Serializable,SmartVisitable<Definition>,Visitable<Definition>
- All Known Subinterfaces:
ResourceAttributeDefinitionDelegator<T>
- All Known Implementing Classes:
TransformablePropertyDefinition,TransformablePropertyDefinition.RefinedAttribute,TransformablePropertyDefinition.ResourceAttribute
public interface PropertyDefinitionDelegator<T>
extends ItemDefinitionDelegator<PrismProperty<T>>, PrismPropertyDefinition<T>
-
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 -
Method Summary
Modifier and TypeMethodDescriptiondefault @NotNull PropertyDelta<T>createEmptyDelta(ItemPath path) Creates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.default Tdelegate()default @Nullable Collection<? extends DisplayableValue<T>>Returns allowed values for this property.default @NotNull MatchingRule<T>Returns the resolvedMatchingRulefor this property.default QNameReturns matching rule name.default @Nullable Collection<? extends DisplayableValue<T>>Returns suggested values for this property.Returns a compile-time class that is used to represent items.default @NotNull QNameReturns a name of the type for this definition.default PrismReferenceValueReference to an object that directly or indirectly represents possible values for this item.default @NotNull PrismProperty<T>Create an item instance.default @NotNull PrismProperty<T>instantiate(QName name) Create an item instance.Methods inherited from interface com.evolveum.midpoint.prism.Definition
checkMutableOnExposingMethods inherited from interface com.evolveum.midpoint.prism.deleg.DefinitionDelegator
accept, accept, debugDump, debugDump, debugDump, debugDumpLazily, debugDumpLazily, getAnnotation, getAnnotations, getDeprecatedSince, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getMergerIdentifier, getMergerInstance, getMutabilityFlag, getNaturalKeyConstituents, getNaturalKeyInstance, getPlannedRemoval, getRemovedSince, getSchemaContextDefinition, getSchemaMigrations, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isOptionalCleanup, isRemoved, isRuntimeSchemaMethods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutableMethods inherited from interface com.evolveum.midpoint.prism.ItemDefinition
cloneWithNewName, getProcessing, isAlwaysUseForEquals, isIgnoredMethods inherited from interface com.evolveum.midpoint.prism.deleg.ItemDefinitionDelegator
canAdd, canModify, canRead, debugDumpShortToString, deepClone, findItemDefinition, getDiagrams, getHelp, getItemName, getMaxOccurs, getMinOccurs, getSubstitutionHead, isDynamic, isHeterogeneousListItem, isIndexed, isIndexOnly, isInherited, isOperational, isSearchable, isValidFor, structuredTypeMethods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
getInfoMethods inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinition
isMandatory, isMultiValue, isOptional, isSingleValueMethods inherited from interface com.evolveum.midpoint.prism.PrismItemMatchingDefinition
getNormalizer, getStringNormalizerForPolyStringProperty, getStringNormalizerIfApplicable, isCustomPolyStringMethods inherited from interface com.evolveum.midpoint.prism.PrismPropertyDefinition
clone, convertStringValueToPolyString, getTypeClassLegacy, isAnyType, mutatorMethods inherited from interface com.evolveum.midpoint.prism.schema.SchemaLookup.Aware
schemaLookup
-
Method Details
-
delegate
PrismPropertyDefinition<T> delegate()- Specified by:
delegatein interfaceDefinitionDelegator- Specified by:
delegatein interfaceItemDefinitionDelegator<T>
-
getTypeName
Description copied from interface:DefinitionReturns a name of the type for this definition. The type can be part of the compile-time schema or it can be defined at run time. Examples of the former case are types like c:UserType, xsd:string, or even flexible ones like c:ExtensionType or c:ShadowAttributesType. Examples of the latter case are types used in - custom extensions, like ext:LocationsType (where ext = e.g. http://example.com/extension), - resource schema, like ri:inetOrgPerson (ri = http://.../resource/instance-3), - connector schema, like TODO In XML representation that corresponds to the name of the XSD type. Although beware, the run-time types do not have statically defined structure. And the resource and connector-related types may even represent different kinds of objects within different contexts (e.g. two distinct resources both with ri:AccountObjectClass types). Also note that for complex type definitions, the type name serves as a unique identifier. On the other hand, for item definitions, it is just one of its attributes; primary key is item name in that case. The type name should be fully qualified. (TODO reconsider this)- Specified by:
getTypeNamein interfaceDefinition- Specified by:
getTypeNamein interfaceDefinitionDelegator- Specified by:
getTypeNamein interfaceItemDefinitionDelegator<T>- Specified by:
getTypeNamein interfacePrismItemBasicDefinition- Specified by:
getTypeNamein interfacePrismItemMatchingDefinition<T>- Returns:
- the type name
-
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>
-
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 interfaceItemDefinitionDelegator<T>- Specified by:
createEmptyDeltain interfacePrismItemInstantiableDefinition<T,PrismPropertyValue<T>, PrismProperty<T>, PrismPropertyDefinition<T>, PropertyDelta<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 interfaceItemDefinitionDelegator<T>- Specified by:
instantiatein interfacePrismItemInstantiableDefinition<T,PrismPropertyValue<T>, PrismProperty<T>, PrismPropertyDefinition<T>, PropertyDelta<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 interfaceItemDefinitionDelegator<T>- Specified by:
instantiatein interfacePrismItemInstantiableDefinition<T,PrismPropertyValue<T>, PrismProperty<T>, PrismPropertyDefinition<T>, PropertyDelta<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 interfaceDefinitionDelegator- Specified by:
getTypeClassin interfacePrismItemMatchingDefinition<T>- Specified by:
getTypeClassin interfacePrismPropertyDefinition<T>
-
getValueEnumerationRef
Description copied from interface:ItemDefinitionReference to an object that directly or indirectly represents possible values for this item. We do not define here what exactly the object has to be. It can be a lookup table, script that dynamically produces the values or anything similar. The object must produce the values of the correct type for this item otherwise an error occurs.- Specified by:
getValueEnumerationRefin interfaceItemDefinition<T>- Specified by:
getValueEnumerationRefin interfaceItemDefinitionDelegator<T>- Specified by:
getValueEnumerationRefin interfacePrismItemValuesDefinition<T>
-