Class ShadowAttributesContainerDefinitionImpl
java.lang.Object
com.evolveum.midpoint.prism.AbstractFreezable
com.evolveum.midpoint.prism.impl.schema.SchemaRegistryStateAware
com.evolveum.midpoint.prism.impl.DefinitionImpl
com.evolveum.midpoint.prism.impl.ItemDefinitionImpl<PrismContainer<C>>
com.evolveum.midpoint.prism.impl.PrismContainerDefinitionImpl<ShadowAttributesType>
com.evolveum.midpoint.schema.processor.ShadowAttributesContainerDefinitionImpl
- All Implemented Interfaces:
Definition
,Definition.DefinitionBuilder
,Definition.DefinitionMutator
,DefinitionFragmentBuilder
,Freezable
,ItemDefinition<PrismContainer<ShadowAttributesType>>
,ItemDefinition.ItemDefinitionLikeBuilder
,ItemDefinition.ItemDefinitionMutator
,LivePrismItemDefinition
,LocalItemDefinitionStore
,PrismContainerDefinition<ShadowAttributesType>
,PrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAttributesType>
,PrismItemAccessDefinition
,PrismItemAccessDefinition.Mutable
,PrismItemBasicDefinition
,PrismItemBasicDefinition.Mutable
,PrismItemStorageDefinition
,PrismItemStorageDefinition.Mutable
,PrismLifecycleDefinition
,PrismLifecycleDefinition.Mutable
,PrismPresentationDefinition
,PrismPresentationDefinition.Mutable
,Revivable
,SchemaLookup.Aware
,SerializableContainerDefinition
,SerializableDefinition
,SerializableItemDefinition
,SmartVisitable<Definition>
,Visitable<Definition>
,ShadowAttributesContainerDefinition
,DebugDumpable
,Serializable
,Cloneable
public class ShadowAttributesContainerDefinitionImpl
extends PrismContainerDefinitionImpl<ShadowAttributesType>
implements ShadowAttributesContainerDefinition
Resource Object Definition (Object Class).
Object Class refers to a type of object on the Resource. Unix account, Active
Directory group, inetOrgPerson LDAP objectclass or a schema of USERS database
table are all Object Classes from the midPoint point of view. Object class
defines a set of attribute names, types for each attributes and few
additional properties.
This class represents schema definition for resource object (object class).
See
Definition
for more details.
Resource Object Definition is immutable. TODO: This will probably need to be changed to a mutable object.- Author:
- Radovan Semancik
- See Also:
-
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.PrismItemAccessDefinition.Mutable
PrismItemAccessDefinition.Mutable.Delegable
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.PrismItemBasicDefinition.Mutable
PrismItemBasicDefinition.Mutable.Delegable
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.PrismLifecycleDefinition.Mutable
PrismLifecycleDefinition.Mutable.Delegable
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
PrismPresentationDefinition.Data, PrismPresentationDefinition.Delegable, PrismPresentationDefinition.Mutable
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition.Mutable
PrismPresentationDefinition.Mutable.Delegable
-
Field Summary
Fields inherited from class com.evolveum.midpoint.prism.impl.PrismContainerDefinitionImpl
compileTimeClass, complexTypeDefinition
Fields inherited from class com.evolveum.midpoint.prism.impl.ItemDefinitionImpl
heterogeneousListItem, itemName, processing, substitutionHead
Fields inherited from class com.evolveum.midpoint.prism.impl.DefinitionImpl
deprecated, deprecatedSince, displayHint, displayName, displayOrder, documentation, elaborate, emphasized, experimental, help, isAbstract, isRuntimeSchema, plannedRemoval, removed, removedSince, typeName
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
Method Summary
Modifier and TypeMethodDescriptionclone()
Shallow cloneprotected void
debugDump
(int indent) findAttributeDefinition
(ItemPath elementPath) Collection<? extends ShadowSimpleAttributeDefinition<?>>
Definition of the container values.@NotNull List<? extends ItemDefinition<?>>
FIXME this looks like outdated description Returns set of property definitions.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
toString()
Methods inherited from class com.evolveum.midpoint.prism.impl.PrismContainerDefinitionImpl
accept, canRepresent, checkMutable, cloneWithNewDefinition, cloneWithNewName, cloneWithNewType, copyDefinitionDataFrom, createContainerDefinition, createContainerDefinition, createContainerDefinition, createEmptyDelta, createPropertyDefinition, createPropertyDefinition, createPropertyDefinition, createPropertyDefinition, createPropertyDefinition, createPropertyDefinition, createValue, debugDump, deepClone, findItemDefinition, getAlwaysUseForEquals, getCompileTimeClass, getDebugDumpClassName, getDiagrams, getDocClassName, getNaturalKeyConstituents, getPropertyDefinitions, getSchemaContextDefinition, getSchemaNamespace, getTypeClass, isAbstract, isEmpty, mutator, performFreeze, replaceDefinition, setAlwaysUseForEquals, setCompileTimeClass, setComplexTypeDefinition
Methods inherited from class com.evolveum.midpoint.prism.impl.ItemDefinitionImpl
canAdd, canModify, canRead, copyDefinitionDataFrom, debugDumpShortToString, debugFlags, debugMultiplicity, equals, extendToString, getItemName, getMaxOccurs, getMergerInstance, getMinOccurs, getObjectBuilt, getProcessing, getSubstitutionHead, getValueEnumerationRef, hashCode, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIndexed, isIndexOnly, isInherited, isOperational, isSearchable, isValidFor, revive, setAlwaysUseForEquals, setCanAdd, setCanModify, setCanRead, setDynamic, setHeterogeneousListItem, setIndexed, setIndexOnly, setInherited, setMaxOccurs, setMinOccurs, setOperational, setProcessing, setReadOnly, setSearchable, setSubstitutionHead, setValueEnumerationRef, useSerializationProxy, writeReplace
Methods inherited from class com.evolveum.midpoint.prism.impl.DefinitionImpl
accept, addSchemaMigration, copyDefinitionDataFrom, extendDumpHeader, getAnnotation, getAnnotation, getAnnotations, getDeprecatedSince, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMergerIdentifier, getNaturalKeyInstance, getPlannedRemoval, getRemovedSince, getSchemaMigrations, getTypeName, isDeprecated, isElaborate, isEmphasized, isExperimental, isOptionalCleanup, isRemoved, isRuntimeSchema, setAbstract, setAnnotation, setDeprecated, setDeprecatedSince, setDiagrams, setDisplayHint, setDisplayName, setDisplayOrder, setDocumentation, setElaborate, setEmphasized, setExperimental, setHelp, setMergerIdentifier, setNaturalKeyConstituents, setOptionalCleanup, setPlannedRemoval, setRemoved, setRemovedSince, setRuntimeSchema, setSchemaContextDefinition, setSchemaMigrations
Methods inherited from class com.evolveum.midpoint.prism.impl.schema.SchemaRegistryStateAware
schemaLookup, setSchemaLookup
Methods inherited from class com.evolveum.midpoint.prism.AbstractFreezable
freeze, freeze, freezeAll, freezeNullableList, isImmutable, isMutable
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
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.Definition.DefinitionMutator
setAnnotation, setMergerIdentifier, setNaturalKeyConstituents, setOptionalCleanup, setRuntimeSchema, setSchemaContextDefinition
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.ItemDefinition.ItemDefinitionLikeBuilder
getExtraFeaturesToParse
Methods inherited from interface com.evolveum.midpoint.prism.ItemDefinition.ItemDefinitionMutator
setAlwaysUseForEquals, setDeprecatedSince, setDynamic, setElaborate, setHeterogeneousListItem, setIgnored, setIndexOnly, setInherited, setOperational, setPlannedRemoval, setProcessing, setReadOnly, setSearchable, setSubstitutionHead, setValueEnumerationRef
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.PrismItemAccessDefinition.Mutable
setCanAdd, setCanModify, setCanRead, setInfo
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.PrismItemBasicDefinition.Mutable
setMaxOccurs, setMinOccurs
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition
isIndexed, isIndexOnly, isSearchable
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition.Mutable
setIndexed
Methods inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
getDeprecatedSince, getPlannedRemoval, getRemovedSince, getSchemaMigrations, isDeprecated, isExperimental, isRemoved
Methods inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition.Mutable
addSchemaMigration, setDeprecated, setExperimental, setRemoved, setRemovedSince, setSchemaMigrations
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.PrismPresentationDefinition.Mutable
setDiagrams, setDisplayHint, setDisplayName, setDisplayOrder, setDocumentation, setEmphasized, setHelp
Methods inherited from interface com.evolveum.midpoint.prism.schema.SerializableDefinition
getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getExtraFeaturesToSerialize, getHelp, isEmphasized
Methods inherited from interface com.evolveum.midpoint.prism.schema.SerializableItemDefinition
getItemName, getMaxOccurs, getMinOccurs, getProcessing, getTypeName, isIndexed, isOperational
Methods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
accept
-
Method Details
-
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>
- Specified by:
getComplexTypeDefinition
in interfaceShadowAttributesContainerDefinition
- Overrides:
getComplexTypeDefinition
in classPrismContainerDefinitionImpl<ShadowAttributesType>
-
getComplexTypeDefinitionToSerialize
- Specified by:
getComplexTypeDefinitionToSerialize
in interfaceSerializableContainerDefinition
- Overrides:
getComplexTypeDefinitionToSerialize
in classPrismContainerDefinitionImpl<ShadowAttributesType>
-
getPrimaryIdentifiers
Description copied from interface:ShadowAttributesContainerDefinition
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.- Specified by:
getPrimaryIdentifiers
in interfaceShadowAttributesContainerDefinition
- Returns:
- definition of identifier attributes
-
getSecondaryIdentifiers
Description copied from interface:ShadowAttributesContainerDefinition
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.- Specified by:
getSecondaryIdentifiers
in interfaceShadowAttributesContainerDefinition
- Returns:
- definition of secondary identifier attributes
-
getAllIdentifiers
- Specified by:
getAllIdentifiers
in interfaceShadowAttributesContainerDefinition
-
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>>
- Specified by:
instantiate
in interfaceShadowAttributesContainerDefinition
- Overrides:
instantiate
in classPrismContainerDefinitionImpl<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>>
- Specified by:
instantiate
in interfaceShadowAttributesContainerDefinition
- Overrides:
instantiate
in classPrismContainerDefinitionImpl<ShadowAttributesType>
-
clone
Description copied from class:PrismContainerDefinitionImpl
Shallow clone- Specified by:
clone
in interfaceDefinition
- Specified by:
clone
in interfaceItemDefinition<PrismContainer<ShadowAttributesType>>
- Specified by:
clone
in interfacePrismContainerDefinition<ShadowAttributesType>
- Specified by:
clone
in interfaceShadowAttributesContainerDefinition
- Overrides:
clone
in classPrismContainerDefinitionImpl<ShadowAttributesType>
-
copyDefinitionDataFrom
-
findAttributeDefinition
- Specified by:
findAttributeDefinition
in interfaceShadowAttributesContainerDefinition
-
debugDump
- Specified by:
debugDump
in interfaceDebugDumpable
- Overrides:
debugDump
in classPrismContainerDefinitionImpl<ShadowAttributesType>
-
toString
- Overrides:
toString
in classItemDefinitionImpl<PrismContainer<ShadowAttributesType>>
-
getDefinitions
Description copied from class:PrismContainerDefinitionImpl
FIXME this looks like outdated description Returns set of property definitions.WARNING: This may return definitions from the associated complex type. Therefore changing the returned set may influence also the complex type definition.
The set contains all property definitions of all types that were parsed. Order of definitions is insignificant.
- Specified by:
getDefinitions
in interfaceLocalItemDefinitionStore
- Specified by:
getDefinitions
in interfacePrismContainerDefinition<ShadowAttributesType>
- Specified by:
getDefinitions
in interfaceShadowAttributesContainerDefinition
- Overrides:
getDefinitions
in classPrismContainerDefinitionImpl<ShadowAttributesType>
- Returns:
- list of definitions
-
getSimpleAttributesDefinitions
@NotNull public @NotNull List<? extends ShadowSimpleAttributeDefinition<?>> getSimpleAttributesDefinitions()- Specified by:
getSimpleAttributesDefinitions
in interfaceShadowAttributesContainerDefinition
-
getResourceObjectDefinition
- Specified by:
getResourceObjectDefinition
in interfaceShadowAttributesContainerDefinition
-
isUsedInSimpleAssociationObject
public boolean isUsedInSimpleAssociationObject()- Specified by:
isUsedInSimpleAssociationObject
in interfaceShadowAttributesContainerDefinition
-