Interface ShadowAttributesContainer
- All Superinterfaces:
DebugDumpable
,Freezable
,Item<PrismContainerValue<ShadowAttributesType>,
,PrismContainerDefinition<ShadowAttributesType>> Itemable
,ParentVisitable
,PathVisitable
,PrismContainer<ShadowAttributesType>
,PrismContainerable<ShadowAttributesType>
,PrismVisitable
,Revivable
,Serializable
,ShadowItemsContainer
,Visitable
- All Known Implementing Classes:
ShadowAttributesContainerImpl
public interface ShadowAttributesContainer
extends ShadowItemsContainer, PrismContainer<ShadowAttributesType>
TODO
-
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
Fields inherited from interface com.evolveum.midpoint.prism.Item
KEY_NAMESPACE_CONTEXT
-
Method Summary
Modifier and TypeMethodDescriptionvoid
add
(ShadowAttribute<?, ?, ?, ?> attribute) default void
addAttribute
(ShadowAttribute<?, ?, ?, ?> attribute) This method exists just to avoid confusion betweenPrismContainer.add(Item)
andadd(ShadowAttribute)
for values that conform to both of these signatures (e.g.,ShadowSimpleAttribute
).default ShadowAttributesContainer
addReferenceAttribute
(QName attributeName, ShadowReferenceAttributeValue value) default ShadowAttributesContainer
addReferenceAttribute
(QName attributeName, AbstractShadow shadow, boolean full) default ShadowAttributesContainer
addSimpleAttribute
(QName attributeName, Object realValue) clone()
Literal clone.<T> boolean
contains
(ShadowSimpleAttribute<T> attr) default boolean
containsAttribute
(QName attributeName) createEmptyContainer
(QName elementName, ResourceObjectDefinition resourceObjectDefinition) findOrCreateReferenceAttribute
(QName attributeName) <X> ShadowSimpleAttribute<X>
findOrCreateSimpleAttribute
(ShadowSimpleAttributeDefinition attributeDefinition) <X> ShadowSimpleAttribute<X>
findOrCreateSimpleAttribute
(QName attributeName) findReferenceAttribute
(QName attributeQName) <X> ShadowSimpleAttribute<X>
findSimpleAttribute
(ShadowSimpleAttributeDefinition attributeDefinition) Finds a specific attribute in the resource object by definition.<X> ShadowSimpleAttribute<X>
findSimpleAttribute
(QName attributeQName) Finds a specific attribute in the resource object by name.@NotNull Collection<ShadowSimpleAttribute<?>>
@NotNull Collection<ShadowAttribute<?,
?, ?, ?>> Returns applicable definition.default @NotNull ShadowAttributesContainerDefinition
TODO review docs Specifies which resource attribute should be used as a "technical" name for the account.Returns a (single) primary identifier.@NotNull Collection<ShadowSimpleAttribute<?>>
TODO review docs Returns primary identifiers.@NotNull Collection<ShadowReferenceAttribute>
Returns a detached, immutable list.default @NotNull ResourceObjectDefinition
@NotNull Collection<ShadowSimpleAttribute<?>>
TODO review docs Returns secondary identifiers.@NotNull Collection<ShadowSimpleAttribute<?>>
TODO review docs Returns set of resource object attributes.void
remove
(ShadowAttribute<?, ?, ?, ?> item) Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDump, debugDumpLazily, debugDumpLazily
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutable
Methods inherited from interface com.evolveum.midpoint.prism.Item
acceptParentVisitor, acceptVisitor, add, add, addAll, addAll, addIgnoringEquivalents, addRespectingMetadataAndCloning, applyDefinition, applyDefinition, applyDefinitionIfMissing, assertDefinitions, assertDefinitions, assertDefinitions, checkConsistence, checkConsistence, checkConsistence, checkConsistence, checkConsistence, checkConsistenceInternal, clear, contains, contains, copy, diff, diff, equals, equals, equals, filterValues, filterYields, find, findValue, findValue, getAllItems, getAllValues, getAnyValue, getAnyValue, getClonedValues, getDisplayName, getElementName, getHelp, getHighestId, getNamespaceContext, getParent, getPath, getRealValue, getRealValues, getRealValuesArray, getRealValuesOrRawTypes, getUserData, getUserData, hasAnyValue, hasCompleteDefinition, hashCode, hashCode, hashCode, hasNoValues, hasRaw, isEmpty, isIncomplete, isOperational, isRaw, isSingleValue, isSingleValueByDefinition, merge, normalize, recomputeAllValues, remove, remove, removeAll, removeIf, removeRespectingMetadata, replace, replaceAll, setDefinition, setElementName, setIncomplete, setParent, setUserData, size, valuesStream
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainer
accept, add, canRepresent, canRepresent, cloneComplex, containsItem, createDelta, createDelta, createImmutableClone, createNewValue, deepCloneDefinition, diff, diff, diffModifications, equivalent, findContainer, findCreateItem, findCreateItem, findItem, findItem, findItem, findOrCreateContainer, findOrCreateItem, findOrCreateItem, findOrCreateProperty, findOrCreateReference, findPartial, findProperty, findReference, findValue, getCompileTimeClass, getPropertyRealValue, getRealValue, getRealValues, getValue, getValue, getValues, mergeValue, mergeValues, mergeValues, remove, removeContainer, removeItem, removeProperty, removeReference, setContainerRealValue, setPropertyRealValue, setPropertyRealValues, setRealValue, setValue, trim, trimDefinitionTree
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainerable
getComplexTypeDefinition
-
Method Details
-
createEmptyContainer
static ShadowAttributesContainerImpl createEmptyContainer(QName elementName, ResourceObjectDefinition resourceObjectDefinition) -
getDefinition
ShadowAttributesContainerDefinition getDefinition()Description copied from interface:Item
Returns applicable definition.May return null if no definition is applicable or the definition is not known.
- Specified by:
getDefinition
in interfaceItem<PrismContainerValue<ShadowAttributesType>,
PrismContainerDefinition<ShadowAttributesType>> - Specified by:
getDefinition
in interfaceItemable
- Specified by:
getDefinition
in interfacePrismContainer<ShadowAttributesType>
- Specified by:
getDefinition
in interfacePrismContainerable<ShadowAttributesType>
- Returns:
- applicable definition
-
getDefinitionRequired
-
getResourceObjectDefinitionRequired
-
getSimpleAttributes
TODO review docs Returns set of resource object attributes. The order of attributes is insignificant. The returned set is immutable.- Returns:
- set of resource object attributes.
-
getReferenceAttributes
Returns a detached, immutable list. -
getAttributes
-
add
- Throws:
SchemaException
-
addAttribute
This method exists just to avoid confusion betweenPrismContainer.add(Item)
andadd(ShadowAttribute)
for values that conform to both of these signatures (e.g.,ShadowSimpleAttribute
).- Throws:
SchemaException
-
getPrimaryIdentifier
PrismProperty<?> getPrimaryIdentifier()Returns a (single) primary identifier. This method returns a property that acts as an (primary) identifier for the resource object. Primary identifiers are used to access the resource objects, retrieve them from resource, identify objects for modifications, etc. Returns null if no identifier is defined. Resource objects may have multiple (composite) identifiers, but this method assumes that there is only a single identifier. The method will throw exception if that assumption is not satisfied.- Returns:
- identifier property
- Throws:
IllegalStateException
- if resource object has multiple identifiers
-
getPrimaryIdentifiers
TODO review docs Returns primary identifiers. This method returns properties that act as (primary) identifiers for the resource object. Primary identifiers are used to access the resource objects, retrieve them from resource, identify objects for modifications, etc. Returns empty set if no identifier is defined. Must not return null. Resource objects may have multiple (composite) identifiers, all of them are returned. The returned set it immutable! Any modifications will be lost.- Returns:
- set of identifier properties
-
getSecondaryIdentifiers
TODO review docs Returns secondary identifiers. This method returns properties that act as secondary identifiers for the resource object. Secondary identifiers are used to confirm primary identification of resource object. Returns empty set if no identifier is defined. Must not return null. Resource objects may have multiple (composite) identifiers, all of them are returned.- Returns:
- set of secondary identifier properties
-
getAllIdentifiers
-
getNamingAttribute
ShadowSimpleAttribute<String> getNamingAttribute()TODO 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.- Returns:
- attribute that should be used as a "technical" name for the account.
-
findSimpleAttribute
Finds a specific attribute in the resource object by name. Returns null if nothing is found.- Parameters:
attributeQName
- attribute name to find.- Returns:
- found attribute or null
-
findReferenceAttribute
-
containsAttribute
-
findSimpleAttribute
<X> ShadowSimpleAttribute<X> findSimpleAttribute(ShadowSimpleAttributeDefinition attributeDefinition) Finds a specific attribute in the resource object by definition. Returns null if nothing is found.- Parameters:
attributeDefinition
- attribute definition to find.- Returns:
- found attribute or null
-
findOrCreateSimpleAttribute
<X> ShadowSimpleAttribute<X> findOrCreateSimpleAttribute(ShadowSimpleAttributeDefinition attributeDefinition) throws SchemaException - Throws:
SchemaException
-
findOrCreateSimpleAttribute
<X> ShadowSimpleAttribute<X> findOrCreateSimpleAttribute(QName attributeName) throws SchemaException - Throws:
SchemaException
-
findOrCreateReferenceAttribute
- Throws:
SchemaException
-
addSimpleAttribute
default ShadowAttributesContainer addSimpleAttribute(QName attributeName, Object realValue) throws SchemaException - Throws:
SchemaException
-
addReferenceAttribute
default ShadowAttributesContainer addReferenceAttribute(QName attributeName, ShadowReferenceAttributeValue value) throws SchemaException - Throws:
SchemaException
-
addReferenceAttribute
default ShadowAttributesContainer addReferenceAttribute(QName attributeName, AbstractShadow shadow, boolean full) throws SchemaException - Throws:
SchemaException
-
contains
-
clone
ShadowAttributesContainer clone()Description copied from interface:Item
Literal clone.- Specified by:
clone
in interfaceItem<PrismContainerValue<ShadowAttributesType>,
PrismContainerDefinition<ShadowAttributesType>> - Specified by:
clone
in interfacePrismContainer<ShadowAttributesType>
- Specified by:
clone
in interfaceShadowItemsContainer
-
remove
-