Interface AttributeContainerDefinitionDelegator
-
- All Superinterfaces:
Cloneable,ContainerDefinitionDelegator<ShadowAttributesType>,DebugDumpable,Definition,DefinitionDelegator,Freezable,ItemDefinition<PrismContainer<ShadowAttributesType>>,ItemDefinitionDelegator<PrismContainer<ShadowAttributesType>>,LocalItemDefinitionStore,PrismContainerDefinition<ShadowAttributesType>,PrismContextSensitive,PrismItemAccessDefinition,ResourceAttributeContainerDefinition,Revivable,Serializable,SmartVisitable<Definition>,Visitable<Definition>
public interface AttributeContainerDefinitionDelegator extends ContainerDefinitionDelegator<ShadowAttributesType>, ResourceAttributeContainerDefinition
-
-
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 ResourceAttributeContainerDefinitiondelegate()default ResourceAttributeDefinition<?>findAttributeDefinition(ItemPath elementPath)default ResourceAttributeDefinition<?>findAttributeDefinition(String localName)default <T> ResourceAttributeDefinition<T>findAttributeDefinition(QName elementQName, boolean caseInsensitive)default Collection<? extends ResourceAttributeDefinition<?>>getAllIdentifiers()default List<? extends ResourceAttributeDefinition<?>>getAttributeDefinitions()default ResourceObjectDefinitiongetComplexTypeDefinition()Definition of the container values.default @NotNull List<? extends ResourceAttributeDefinition<?>>getDefinitions()Returns a list of item definitions in this container.default ResourceAttributeDefinition<?>getDescriptionAttribute()TODO review docs Returns the definition of description attribute of a resource object.default ResourceAttributeDefinition<?>getDisplayNameAttribute()TODO review docs Returns the definition of display name attribute.default ResourceAttributeDefinition<?>getNamingAttribute()TODO review docs Specifies which resource attribute should be used as a "technical" name for the account.default StringgetNativeObjectClass()TODO review docs Returns the native object class string for the resource object.default Collection<? extends ResourceAttributeDefinition<?>>getPrimaryIdentifiers()TODO review docs Returns the definition of primary identifier attributes of a resource object.default Collection<? extends ResourceAttributeDefinition<?>>getSecondaryIdentifiers()TODO review docs Returns the definition of secondary identifier attributes of a resource object.default @NotNull ResourceAttributeContainerinstantiate()Create an item instance.default @NotNull ResourceAttributeContainerinstantiate(QName name)Create an item instance.default booleanisDefaultAccountDefinition()TODO review docs Indicates whether definition is should be used as default account type.default <T extends ShadowType>
@NotNull PrismObjectDefinition<T>toShadowDefinition()-
Methods inherited from interface com.evolveum.midpoint.prism.deleg.ContainerDefinitionDelegator
canRepresent, cloneWithReplacedDefinition, createEmptyDelta, createValue, findContainerDefinition, findItemDefinition, getCompileTimeClass, getItemNames, getPropertyDefinitions, getTypeClass, isEmpty, replaceDefinition, structuredType
-
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, 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, getDiagrams, getItemName, getMaxOccurs, getMinOccurs, getSubstitutionHead, getValueEnumerationRef, isDynamic, isHeterogeneousListItem, isIndexOnly, isInherited, isOperational, isValidFor
-
Methods inherited from interface com.evolveum.midpoint.prism.LocalItemDefinitionStore
containsItemDefinition, findItemDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinition, findPropertyDefinition, findReferenceDefinition
-
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinition
createEmptyDelta, getTypeClass, isCompletelyDefined, structuredType, toMutable
-
Methods inherited from interface com.evolveum.midpoint.schema.processor.ResourceAttributeContainerDefinition
clone
-
-
-
-
Method Detail
-
delegate
ResourceAttributeContainerDefinition delegate()
- Specified by:
delegatein interfaceContainerDefinitionDelegator<ShadowAttributesType>- Specified by:
delegatein interfaceDefinitionDelegator- Specified by:
delegatein interfaceItemDefinitionDelegator<PrismContainer<ShadowAttributesType>>
-
getPrimaryIdentifiers
default Collection<? extends ResourceAttributeDefinition<?>> getPrimaryIdentifiers()
Description copied from interface:ResourceAttributeContainerDefinitionTODO review docs Returns the definition of primary identifier attributes of a resource object. May return empty set if there are no identifier attributes. Must not return null. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
getPrimaryIdentifiersin interfaceResourceAttributeContainerDefinition- Returns:
- definition of identifier attributes
-
getSecondaryIdentifiers
default Collection<? extends ResourceAttributeDefinition<?>> getSecondaryIdentifiers()
Description copied from interface:ResourceAttributeContainerDefinitionTODO review docs Returns the definition of secondary identifier attributes of a resource object. May return empty set if there are no secondary identifier attributes. Must not return null. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
getSecondaryIdentifiersin interfaceResourceAttributeContainerDefinition- Returns:
- definition of secondary identifier attributes
-
getAllIdentifiers
default Collection<? extends ResourceAttributeDefinition<?>> getAllIdentifiers()
- Specified by:
getAllIdentifiersin interfaceResourceAttributeContainerDefinition
-
getDescriptionAttribute
default ResourceAttributeDefinition<?> getDescriptionAttribute()
Description copied from interface:ResourceAttributeContainerDefinitionTODO review docs Returns the definition of description attribute of a resource object. Returns null if there is no description attribute. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
getDescriptionAttributein interfaceResourceAttributeContainerDefinition- Returns:
- definition of secondary identifier attributes
-
getNamingAttribute
default ResourceAttributeDefinition<?> getNamingAttribute()
Description copied from interface:ResourceAttributeContainerDefinitionTODO review docs Specifies which resource attribute should be used as a "technical" name for the account. This name will appear in log files and other troubleshooting tools. The name should be a form of unique identifier that can be used to locate the resource object for diagnostics. It should not contain white chars and special chars if that can be avoided and it should be reasonable short. It is different from a display name attribute. Display name is intended for a common user or non-technical administrator (such as role administrator). The naming attribute is intended for technical IDM administrators and developers.- Specified by:
getNamingAttributein interfaceResourceAttributeContainerDefinition- Returns:
- resource attribute definition that should be used as a "technical" name for the account.
-
getNativeObjectClass
default String getNativeObjectClass()
Description copied from interface:ResourceAttributeContainerDefinitionTODO review docs Returns the native object class string for the resource object. Native object class is the name of the Resource Object Definition (Object Class) as it is seen by the resource itself. The name of the Resource Object Definition may be constrained by XSD or other syntax and therefore may be "mangled" to conform to such syntax. The native object class value will contain un-mangled name (if available). Returns null if there is no native object class. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
getNativeObjectClassin interfaceResourceAttributeContainerDefinition- Returns:
- native object class
-
isDefaultAccountDefinition
default boolean isDefaultAccountDefinition()
Description copied from interface:ResourceAttributeContainerDefinitionTODO review docs Indicates whether definition is should be used as default account type. If true value is returned then the definition should be used as a default account type definition. This is a way how a resource connector may suggest applicable object classes (resource object definitions) for accounts. If no information about account type is present, false should be returned. This method must return true only if isAccountType() returns true. The exception should be never thrown unless there is some bug in the code. The validation of at-most-one value should be done at the time of schema parsing. The exception may not even be thrown at all if the implementation is not able to determine duplicity.- Specified by:
isDefaultAccountDefinitionin interfaceResourceAttributeContainerDefinition- Returns:
- true if the definition should be used as account type.
-
getDisplayNameAttribute
default ResourceAttributeDefinition<?> getDisplayNameAttribute()
Description copied from interface:ResourceAttributeContainerDefinitionTODO review docs Returns the definition of display name attribute. Display name attribute specifies which resource attribute should be used as title when displaying objects of a specific resource object class. It must point to an attribute of String type. If not present, primary identifier should be used instead (but this method does not handle this default behavior). Returns null if there is no display name attribute. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
getDisplayNameAttributein interfaceResourceAttributeContainerDefinition- Returns:
- native object class
-
findAttributeDefinition
default <T> ResourceAttributeDefinition<T> findAttributeDefinition(QName elementQName, boolean caseInsensitive)
- Specified by:
findAttributeDefinitionin interfaceResourceAttributeContainerDefinition
-
findAttributeDefinition
default ResourceAttributeDefinition<?> findAttributeDefinition(ItemPath elementPath)
- Specified by:
findAttributeDefinitionin interfaceResourceAttributeContainerDefinition
-
findAttributeDefinition
default ResourceAttributeDefinition<?> findAttributeDefinition(String localName)
- Specified by:
findAttributeDefinitionin interfaceResourceAttributeContainerDefinition
-
getAttributeDefinitions
default List<? extends ResourceAttributeDefinition<?>> getAttributeDefinitions()
- Specified by:
getAttributeDefinitionsin interfaceResourceAttributeContainerDefinition
-
toShadowDefinition
@NotNull default <T extends ShadowType> @NotNull PrismObjectDefinition<T> toShadowDefinition()
- Specified by:
toShadowDefinitionin interfaceResourceAttributeContainerDefinition
-
instantiate
@NotNull default @NotNull ResourceAttributeContainer 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<PrismContainer<ShadowAttributesType>>- Specified by:
instantiatein interfaceItemDefinitionDelegator<PrismContainer<ShadowAttributesType>>- Specified by:
instantiatein interfaceResourceAttributeContainerDefinition
-
instantiate
@NotNull default @NotNull ResourceAttributeContainer 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<PrismContainer<ShadowAttributesType>>- Specified by:
instantiatein interfaceItemDefinitionDelegator<PrismContainer<ShadowAttributesType>>- Specified by:
instantiatein interfaceResourceAttributeContainerDefinition
-
getDefinitions
@NotNull default @NotNull List<? extends ResourceAttributeDefinition<?>> 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 interfaceContainerDefinitionDelegator<ShadowAttributesType>- Specified by:
getDefinitionsin interfaceLocalItemDefinitionStore- Specified by:
getDefinitionsin interfacePrismContainerDefinition<ShadowAttributesType>- Specified by:
getDefinitionsin interfaceResourceAttributeContainerDefinition
-
getComplexTypeDefinition
default ResourceObjectDefinition 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 interfaceContainerDefinitionDelegator<ShadowAttributesType>- Specified by:
getComplexTypeDefinitionin interfacePrismContainerDefinition<ShadowAttributesType>- Specified by:
getComplexTypeDefinitionin interfaceResourceAttributeContainerDefinition
-
-