Interface ShadowAttributesContainerDefinition
- All Superinterfaces:
Cloneable
,DebugDumpable
,Definition
,Freezable
,ItemDefinition<PrismContainer<ShadowAttributesType>>
,LivePrismItemDefinition
,LocalItemDefinitionStore
,PrismContainerDefinition<ShadowAttributesType>
,PrismItemAccessDefinition
,PrismItemBasicDefinition
,PrismItemStorageDefinition
,PrismLifecycleDefinition
,PrismPresentationDefinition
,Revivable
,SchemaLookup.Aware
,Serializable
,SmartVisitable<Definition>
,Visitable<Definition>
- All Known Subinterfaces:
ShadowAttributesContainerDefinitionDelegator
- All Known Implementing Classes:
ShadowAttributesContainerDefinitionImpl
public interface ShadowAttributesContainerDefinition
extends PrismContainerDefinition<ShadowAttributesType>
The enhanced definition of `attributes` container (
ShadowAttributesContainer
) in a ShadowType
object.
Being enhanced (relative to PrismContainerDefinition
) means that it provides additional functionality
specific to shadows, like getAllIdentifiers()
and similar methods. Overall, it works with enhanced variants
of prism objects, like ShadowAttribute
, ShadowAttributeDefinition
, and so on.- Author:
- Radovan Semancik
-
Nested Class Summary
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.Definition
Definition.DefinitionBuilder, Definition.DefinitionMutator
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.ItemDefinition
ItemDefinition.ItemDefinitionLikeBuilder, ItemDefinition.ItemDefinitionMutator
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinition
PrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
PrismItemAccessDefinition.Data, PrismItemAccessDefinition.Delegable, PrismItemAccessDefinition.Info, PrismItemAccessDefinition.Mutable
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinition
PrismItemBasicDefinition.Data, PrismItemBasicDefinition.Delegable, PrismItemBasicDefinition.Mutable
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition
PrismItemStorageDefinition.Mutable
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
PrismLifecycleDefinition.Data, PrismLifecycleDefinition.Delegable, PrismLifecycleDefinition.Mutable
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
PrismPresentationDefinition.Data, PrismPresentationDefinition.Delegable, PrismPresentationDefinition.Mutable
-
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
Method Summary
Modifier and TypeMethodDescription@NotNull ShadowAttributesContainerDefinition
clone()
findAttributeDefinition
(ItemPath elementPath) Collection<? extends ShadowSimpleAttributeDefinition<?>>
Definition of the container values.@NotNull List<? extends ItemDefinition<?>>
Returns a list of item definitions in this container.Collection<? extends ShadowSimpleAttributeDefinition<?>>
TODO review docs Returns the definition of primary identifier attributes of a resource object.@NotNull ResourceObjectDefinition
Collection<? extends ShadowSimpleAttributeDefinition<?>>
TODO review docs Returns the definition of secondary identifier attributes of a resource object.@NotNull List<? extends ShadowSimpleAttributeDefinition<?>>
@NotNull ShadowAttributesContainer
Create an item instance.@NotNull ShadowAttributesContainer
instantiate
(QName name) Create an item instance.boolean
Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDump, debugDumpLazily, debugDumpLazily
Methods inherited from interface com.evolveum.midpoint.prism.Definition
checkMutableOnExposing, debugDump, getAnnotation, getAnnotations, getMergerIdentifier, getMergerInstance, getMutabilityFlag, getNaturalKeyConstituents, getNaturalKeyInstance, getSchemaContextDefinition, getTypeName, isAbstract, isElaborate, isOptionalCleanup, isRuntimeSchema
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutable
Methods inherited from interface com.evolveum.midpoint.prism.ItemDefinition
cloneWithNewName, debugDumpShortToString, deepClone, getProcessing, getSubstitutionHead, getValueEnumerationRef, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIgnored, isInherited, isOperational
Methods inherited from interface com.evolveum.midpoint.prism.LivePrismItemDefinition
findItemDefinition, isValidFor
Methods inherited from interface com.evolveum.midpoint.prism.LocalItemDefinitionStore
containsItemDefinition, findContainerDefinition, findItemDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinition, findPropertyDefinition, findReferenceDefinition
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinition
canRepresent, cloneWithNewDefinition, cloneWithNewType, createEmptyDelta, createValue, getAlwaysUseForEquals, getCompileTimeClass, getItemNames, getPropertyDefinitions, getTypeClass, isAlwaysUseForEquals, isCompletelyDefined, isEmpty, mutator, replaceDefinition, schemaLookup, structuredType
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
canAdd, canModify, canRead, getInfo
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinition
getItemName, getMaxOccurs, getMinOccurs, getTypeName, isMandatory, isMultiValue, isOptional, isSingleValue
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition
isIndexed, isIndexOnly, isSearchable
Methods inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
getDeprecatedSince, getPlannedRemoval, getRemovedSince, getSchemaMigrations, isDeprecated, isExperimental, isRemoved
Methods inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
getDiagrams, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, isEmphasized
Methods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
accept
-
Method Details
-
getComplexTypeDefinition
ShadowAttributesComplexTypeDefinition getComplexTypeDefinition()Description copied from interface:PrismContainerDefinition
Definition 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:
getComplexTypeDefinition
in interfacePrismContainerDefinition<ShadowAttributesType>
-
getPrimaryIdentifiers
Collection<? extends ShadowSimpleAttributeDefinition<?>> getPrimaryIdentifiers()TODO 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.- Returns:
- definition of identifier attributes
- Throws:
IllegalStateException
- if there is no definition for the referenced attributed
-
getSecondaryIdentifiers
Collection<? extends ShadowSimpleAttributeDefinition<?>> getSecondaryIdentifiers()TODO 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.- Returns:
- definition of secondary identifier attributes
- Throws:
IllegalStateException
- if there is no definition for the referenced attributed
-
getAllIdentifiers
Collection<? extends ShadowSimpleAttributeDefinition<?>> getAllIdentifiers() -
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<PrismContainer<ShadowAttributesType>>
-
instantiate
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<PrismContainer<ShadowAttributesType>>
-
clone
- Specified by:
clone
in interfaceDefinition
- Specified by:
clone
in interfaceItemDefinition<PrismContainer<ShadowAttributesType>>
- Specified by:
clone
in interfacePrismContainerDefinition<ShadowAttributesType>
-
findAttributeDefinition
-
getDefinitions
Description copied from interface:PrismContainerDefinition
Returns a list of item definitions in this container. It is intentionally aList
because it is ordered. (To provide standard format for serialization.) Usually obtained fromComplexTypeDefinition
. So please do not modify the content of the list!- Specified by:
getDefinitions
in interfaceLocalItemDefinitionStore
- Specified by:
getDefinitions
in interfacePrismContainerDefinition<ShadowAttributesType>
-
getSimpleAttributesDefinitions
@NotNull @NotNull List<? extends ShadowSimpleAttributeDefinition<?>> getSimpleAttributesDefinitions() -
getResourceObjectDefinition
-
isUsedInSimpleAssociationObject
boolean isUsedInSimpleAssociationObject()
-