Class ShadowReferenceAttribute
java.lang.Object
com.evolveum.midpoint.prism.AbstractFreezable
com.evolveum.midpoint.prism.impl.ItemImpl<PrismContainerValue<C>,PrismContainerDefinition<C>>
com.evolveum.midpoint.prism.impl.PrismContainerImpl<ShadowAssociationValueType>
com.evolveum.midpoint.schema.processor.ShadowReferenceAttribute
- All Implemented Interfaces:
Freezable
,Item<PrismContainerValue<ShadowAssociationValueType>,
,PrismContainerDefinition<ShadowAssociationValueType>> Itemable
,ItemDefinitionTransformer.TransformableItem
,ParentVisitable
,PathVisitable
,PrismContainer<ShadowAssociationValueType>
,PrismContainerable<ShadowAssociationValueType>
,Revivable
,Visitable
,ShadowAttribute<ShadowAssociationValue,
,ShadowAssociationValueType> DebugDumpable
,Serializable
@Experimental
public class ShadowReferenceAttribute
extends PrismContainerImpl<ShadowAssociationValueType>
implements ShadowAttribute<ShadowAssociationValue,ShadowAssociationValueType>
Object representing a specific shadow association (like `ri:group`). Similar to a
ShadowSimpleAttribute
.
Contained in ShadowAssociationsContainer
.- See Also:
-
Field Summary
Fields inherited from class com.evolveum.midpoint.prism.impl.PrismContainerImpl
compileTimeClass
Fields inherited from class com.evolveum.midpoint.prism.impl.ItemImpl
definition, elementName, incomplete, parent, values
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
Fields inherited from interface com.evolveum.midpoint.prism.Item
KEY_NAMESPACE_CONTEXT
-
Constructor Summary
ConstructorsConstructorDescriptionShadowReferenceAttribute
(QName name, ShadowReferenceAttributeDefinition definition) -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
addInternalExecution
(@NotNull PrismContainerValue<ShadowAssociationValueType> newValue) void
clone()
Literal clone.cloneComplex
(CloneStrategy strategy) Complex clone with different cloning strategies.createNewValueForTargetRef
(@NotNull ObjectReferenceType ref) Adds only the target shadow ref.protected @NotNull PrismContainerValueImpl<ShadowAssociationValueType>
Can be overridden in subclasses.@NotNull ShadowAssociationValue
createNewValueWithFullObject
(@NotNull AbstractShadow target) Creates a value holding the full object.@NotNull ShadowAssociationValue
createNewValueWithIdentifier
(@NotNull ShadowSimpleAttribute<?> identifier) @NotNull ShadowAssociationValue
createNewValueWithIdentifiers
(@NotNull AbstractShadow shadow) @NotNull List<? extends ShadowAssociationValue>
protected String
Return a human readable name of this class suitable for logs.TODO shouldn't be the definition always required?@NotNull ShadowReferenceAttributeDefinition
boolean
int
size()
Returns the number of values for this item.Methods inherited from class com.evolveum.midpoint.prism.impl.PrismContainerImpl
accept, add, addInternal, applyDefinition, assertDefinitions, canRepresent, canRepresent, checkConsistenceInternal, containsItem, copyValues, createDelta, createDelta, createImmutableClone, createParentIfNeeded, debugDump, deepCloneDefinition, diff, diff, diffModifications, equivalent, find, findContainer, findContainer, findCreateItem, findCreateItem, findItem, findItem, findItem, findOrCreateContainer, findOrCreateItem, findOrCreateItem, findOrCreateProperty, findOrCreateReference, findPartial, findProperty, findReference, findValue, getAllItems, getAllValues, getCompileTimeClass, getPropertyRealValue, getRealValue, getRealValues, getValue, getValue, hasCompleteDefinition, isEmpty, mergeValue, mergeValues, mergeValues, propagateDeepCloneDefinition, remove, removeContainer, removeItem, removeProperty, removeReference, setContainerRealValue, setDefinition, setDefinitionHack, setPropertyRealValue, setPropertyRealValues, setRealValue, setValue, startStrictModifications, stopStrictModifications, toString, trim, trimDefinitionTree, useIdentifierIndex
Methods inherited from class com.evolveum.midpoint.prism.impl.ItemImpl
accept, acceptParentVisitor, add, addAll, addForced, addIgnoringEquivalents, addRespectingMetadataAndCloning, addWithResult, appendDebugDumpSuffix, applyDefinitionToValues, assertDefinitions, assertDefinitions, checkConsistence, checkConsistence, checkConsistence, checkConsistence, checkConsistence, checkDefinition, clear, copyValues, diff, equals, equals, equals, fixupDelta, getElementName, getHighestId, getParent, getPath, getPathComponent, getRealValue, getRealValuesArray, getUserData, getUserData, getValues, hashCode, hashCode, hashCode, isIncomplete, merge, normalize, performFreeze, recomputeAllValues, remove, remove, removeAll, removeRespectingMetadata, removeWithResult, replace, replaceAll, revive, setElementName, setIncomplete, setParent, setUserData, transformDefinition, valueRemoved
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.Freezable
checkImmutable, checkMutable, freeze, isImmutable
Methods inherited from interface com.evolveum.midpoint.prism.Item
acceptParentVisitor, add, add, addAll, addAll, addIgnoringEquivalents, addRespectingMetadataAndCloning, applyDefinition, applyDefinitionIfMissing, assertDefinitions, assertDefinitions, checkConsistence, checkConsistence, checkConsistence, checkConsistence, checkConsistence, clear, contains, contains, copy, diff, diff, equals, equals, equals, filterValues, filterYields, findValue, findValue, getAnyValue, getAnyValue, getClonedValues, getDisplayName, getElementName, getHelp, getHighestId, getNamespaceContext, getParent, getPath, getRealValue, getRealValues, getRealValuesArray, getRealValuesOrRawTypes, getUserData, getUserData, hasAnyValue, hashCode, hashCode, hashCode, hasRaw, isIncomplete, isOperational, isRaw, isSingleValue, isSingleValueByDefinition, merge, normalize, recomputeAllValues, remove, remove, removeAll, removeIf, removeRespectingMetadata, replace, replaceAll, setElementName, setIncomplete, setParent, setUserData, valuesStream
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainer
getValues
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainerable
getComplexTypeDefinition
Methods inherited from interface com.evolveum.midpoint.schema.processor.ShadowAttribute
getElementName, isIncomplete, setIncomplete
-
Constructor Details
-
ShadowReferenceAttribute
-
-
Method Details
-
getDefinition
TODO shouldn't be the definition always required?- Specified by:
getDefinition
in interfaceItem<PrismContainerValue<ShadowAssociationValueType>,
PrismContainerDefinition<ShadowAssociationValueType>> - Specified by:
getDefinition
in interfaceItemable
- Specified by:
getDefinition
in interfacePrismContainer<ShadowAssociationValueType>
- Specified by:
getDefinition
in interfacePrismContainerable<ShadowAssociationValueType>
- Specified by:
getDefinition
in interfaceShadowAttribute<ShadowAssociationValue,
ShadowAssociationValueType> - Overrides:
getDefinition
in classPrismContainerImpl<ShadowAssociationValueType>
- Returns:
- applicable property container definition
-
getDefinitionRequired
-
clone
Description copied from interface:Item
Literal clone.- Specified by:
clone
in interfaceItem<PrismContainerValue<ShadowAssociationValueType>,
PrismContainerDefinition<ShadowAssociationValueType>> - Specified by:
clone
in interfacePrismContainer<ShadowAssociationValueType>
- Specified by:
clone
in interfaceShadowAttribute<ShadowAssociationValue,
ShadowAssociationValueType> - Overrides:
clone
in classPrismContainerImpl<ShadowAssociationValueType>
-
cloneComplex
Description copied from interface:Item
Complex clone with different cloning strategies.- Specified by:
cloneComplex
in interfaceItem<PrismContainerValue<ShadowAssociationValueType>,
PrismContainerDefinition<ShadowAssociationValueType>> - Specified by:
cloneComplex
in interfacePrismContainer<ShadowAssociationValueType>
- Overrides:
cloneComplex
in classPrismContainerImpl<ShadowAssociationValueType>
- See Also:
-
addInternalExecution
protected boolean addInternalExecution(@NotNull @NotNull PrismContainerValue<ShadowAssociationValueType> newValue) - Overrides:
addInternalExecution
in classPrismContainerImpl<ShadowAssociationValueType>
-
createNewValue
- Specified by:
createNewValue
in interfacePrismContainer<ShadowAssociationValueType>
- Overrides:
createNewValue
in classPrismContainerImpl<ShadowAssociationValueType>
-
createNewValueInternal
@NotNull protected @NotNull PrismContainerValueImpl<ShadowAssociationValueType> createNewValueInternal()Description copied from class:PrismContainerImpl
Can be overridden in subclasses.- Overrides:
createNewValueInternal
in classPrismContainerImpl<ShadowAssociationValueType>
-
size
public int size()Description copied from interface:Item
Returns the number of values for this item.- Specified by:
size
in interfaceItem<PrismContainerValue<ShadowAssociationValueType>,
PrismContainerDefinition<ShadowAssociationValueType>>
-
getDebugDumpClassName
Description copied from class:PrismContainerImpl
Return a human readable name of this class suitable for logs.- Overrides:
getDebugDumpClassName
in classPrismContainerImpl<ShadowAssociationValueType>
-
createNewValueWithIdentifiers
@NotNull public @NotNull ShadowAssociationValue createNewValueWithIdentifiers(@NotNull @NotNull AbstractShadow shadow) throws SchemaException - Throws:
SchemaException
-
createNewValueWithIdentifier
@NotNull public @NotNull ShadowAssociationValue createNewValueWithIdentifier(@NotNull @NotNull ShadowSimpleAttribute<?> identifier) throws SchemaException - Throws:
SchemaException
-
createNewValueWithFullObject
@NotNull public @NotNull ShadowAssociationValue createNewValueWithFullObject(@NotNull @NotNull AbstractShadow target) throws SchemaException Creates a value holding the full object. Its definition must correspond to the one of the association.- Throws:
SchemaException
-
createNewValueForTargetRef
@NotNull public @NotNull PrismContainerValue<ShadowAssociationValueType> createNewValueForTargetRef(@NotNull @NotNull ObjectReferenceType ref) Adds only the target shadow ref. -
getAssociationValues
-
addValueSkipUniquenessCheck
- Specified by:
addValueSkipUniquenessCheck
in interfaceShadowAttribute<ShadowAssociationValue,
ShadowAssociationValueType> - Throws:
SchemaException
-
hasNoValues
public boolean hasNoValues()- Specified by:
hasNoValues
in interfaceItem<PrismContainerValue<ShadowAssociationValueType>,
PrismContainerDefinition<ShadowAssociationValueType>> - Specified by:
hasNoValues
in interfaceShadowAttribute<ShadowAssociationValue,
ShadowAssociationValueType>
-