Interface ShadowReferenceAttributeDefinition
- All Superinterfaces:
Cloneable
,DebugDumpable
,Definition
,Freezable
,ItemDefinition<PrismReference>
,LayeredDefinition
,LivePrismItemDefinition
,PrismItemAccessDefinition
,PrismItemBasicDefinition
,PrismItemMiscDefinition
,PrismItemStorageDefinition
,PrismLifecycleDefinition
,PrismPresentationDefinition
,PrismReferenceDefinition
,ResourceObjectInboundProcessingDefinition.ItemInboundProcessingDefinition
,Revivable
,SchemaLookup.Aware
,Serializable
,ShadowAttributeDefinition<ShadowReferenceAttributeValue,
,ShadowReferenceAttributeDefinition, Referencable, ShadowReferenceAttribute> ShadowAttributeUcfDefinition
,ShadowItemDefinition
,ShadowItemLayeredDefinition
,ShortDumpable
,SmartVisitable<Definition>
,Visitable<Definition>
- All Known Implementing Classes:
ShadowReferenceAttributeDefinitionImpl
public interface ShadowReferenceAttributeDefinition
extends PrismReferenceDefinition, ShadowAttributeDefinition<ShadowReferenceAttributeValue,ShadowReferenceAttributeDefinition,Referencable,ShadowReferenceAttribute>
Definition of an
ShadowReferenceAttribute
.-
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.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.PrismItemMiscDefinition
PrismItemMiscDefinition.Data, PrismItemMiscDefinition.Delegable, PrismItemMiscDefinition.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
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismReferenceDefinition
PrismReferenceDefinition.PrismReferenceDefinitionBuilder, PrismReferenceDefinition.PrismReferenceDefinitionMutator
Nested classes/interfaces inherited from interface com.evolveum.midpoint.schema.processor.ShadowAttributeUcfDefinition
ShadowAttributeUcfDefinition.Data, ShadowAttributeUcfDefinition.Delegable, ShadowAttributeUcfDefinition.Mutable
-
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
@NotNull ShadowReferenceAttributeDefinition
clone()
@NotNull ShadowReferenceAttributeDefinition
cloneWithNewCardinality
(int newMinOccurs, int newMaxOccurs) default @NotNull ObjectFilter
createTargetObjectsFilter
(boolean resourceSafe) Returns a filter that provides all shadows eligible as the target value for this reference attribute.@NotNull ResourceObjectDefinition
ONLY FOR SUBJECT-SIDE PARTICIPANT (and always non-null for it) Returns generalized definition for objects at the object (target) side.@NotNull ShadowReferenceParticipantRole
What is the role of the object that holds this reference attribute in the subject-object relationship?default @NotNull String
default @NotNull QName
Returns the target object class name.@NotNull Collection<ShadowRelationParticipantType>
Returns types of the objects on the other side.default boolean
Returns `true` if the reference points to an embedded object class.default boolean
matches
(@NotNull ShadowType potentialTarget) Returns `true` if the provided shadow is a legal target for this reference (according to the definition).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, createEmptyDelta, debugDumpShortToString, deepClone, getProcessing, getSubstitutionHead, getValueEnumerationRef, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIgnored, isInherited, isOperational, structuredType
Methods inherited from interface com.evolveum.midpoint.schema.processor.LayeredDefinition
getCurrentLayer
Methods inherited from interface com.evolveum.midpoint.prism.LivePrismItemDefinition
findItemDefinition, isValidFor
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.PrismItemMiscDefinition
getProcessing
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.PrismReferenceDefinition
getTargetObjectDefinition, getTargetTypeName, instantiate, instantiate, isComposite, migrateIfNeeded, mutator
Methods inherited from interface com.evolveum.midpoint.schema.processor.ResourceObjectInboundProcessingDefinition.ItemInboundProcessingDefinition
getCorrelatorDefinition
Methods inherited from interface com.evolveum.midpoint.prism.schema.SchemaLookup.Aware
schemaLookup
Methods inherited from interface com.evolveum.midpoint.schema.processor.ShadowAttributeDefinition
createPrismValueFromRealValue, debugDump, forLayer, getChangeApplicationMode, getDescription, getFetchStrategy, getHumanReadableDescription, getInboundMappingBeans, getIntolerantValuePatterns, getLifecycleState, getModificationPriority, getOutboundMappingBean, getReadReplaceMode, getStandardPath, getStorageStrategy, getTolerantValuePatterns, getTypeClass, hasOutboundMapping, hasRefinements, instantiate, instantiate, instantiateFrom, instantiateFromRealValue, instantiateFromRealValues, isCached, isEffectivelyCached, isExclusiveStrong, isIgnored, isReturnedByDefault, isSimulated, isTolerant, isVisible, isVolatileOnAddOperation, isVolatileOnModifyOperation, isVolatilityTrigger, setOverrideCanAdd, setOverrideCanModify, setOverrideCanRead
Methods inherited from interface com.evolveum.midpoint.schema.processor.ShadowAttributeUcfDefinition
getFrameworkAttributeName, getNativeAttributeName, getReturnedByDefault
Methods inherited from interface com.evolveum.midpoint.schema.processor.ShadowItemDefinition
isVisible
Methods inherited from interface com.evolveum.midpoint.schema.processor.ShadowItemLayeredDefinition
canAdd, canModify, canRead, getLimitations, getMaxOccurs, getMinOccurs, getProcessing, isMandatory, isMultiValue, isOptional, isSingleValue
Methods inherited from interface com.evolveum.midpoint.util.ShortDumpable
shortDump, shortDump, shortDumpLazily
Methods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
accept
-
Method Details
-
getParticipantRole
What is the role of the object that holds this reference attribute in the subject-object relationship? For example, when considering `ri:group` reference attribute on `ri:user` object class pointing to the `ri:group` object class, the participant role for this attribute isShadowReferenceParticipantRole.SUBJECT
, because `ri:user` object class participates in this relation as the subject. For the other side of this reference, the `ri:member` reference attribute on `ri:group` object class will have participant role ofShadowReferenceParticipantRole.OBJECT
, because `ri:group` object class participates in this relation as the object. -
getTargetParticipantTypes
Returns types of the objects on the other side. Always non-empty. -
getGeneralizedObjectSideObjectDefinition
ONLY FOR SUBJECT-SIDE PARTICIPANT (and always non-null for it) Returns generalized definition for objects at the object (target) side. It should cover all possible objects; so it contains definitions of all possible auxiliary object classes. May be: - embedded (for references used to implement complex associations) - or standalone (for references used to implement simple associations, or references without associations). May be: - genuineResourceObjectClassDefinition
- orResourceObjectTypeDefinition
(if there's a default type for that object class; hopefully removed soon, see MID-10309) - orCompositeObjectDefinition
if there are auxiliary object classes. Immutable after the resource schema is frozen.- See Also:
-
AbstractShadowReferenceTypeDefinition.generalizedObjectSideObjectDefinition
-
isTargetingSingleEmbeddedObjectClass
default boolean isTargetingSingleEmbeddedObjectClass()Returns `true` if the reference points to an embedded object class. This indicates a complex association. Callable only on the subject-side reference definitions! -
getTargetObjectClassName
Returns the target object class name. Callable only on the subject-side reference definitions! -
checkSubjectSide
default void checkSubjectSide() -
matches
Returns `true` if the provided shadow is a legal target for this reference (according to the definition). -
createTargetObjectsFilter
Returns a filter that provides all shadows eligible as the target value for this reference attribute. If `resourceSafe` is `true`, the filter is safe for the execution on the resource, i.e., it does not contain multiple values for kind and intent. The filtering by object class is used in such cases; that requires post-processing of returned values that filters out those shadows that do not match those kind/intent values. Note that currently provisioning module require at most one kind/intent even with `noFetch` option being present. -
createEmptyDelta
ReferenceDelta createEmptyDelta() -
getSimulationDefinition
SimulatedShadowReferenceTypeDefinition getSimulationDefinition() -
getSimulationDefinitionRequired
SimulatedShadowReferenceTypeDefinition getSimulationDefinitionRequired() -
getResourceOid
-
clone
- Specified by:
clone
in interfaceDefinition
- Specified by:
clone
in interfaceItemDefinition<PrismReference>
- Specified by:
clone
in interfacePrismReferenceDefinition
- Specified by:
clone
in interfaceShadowAttributeDefinition<ShadowReferenceAttributeValue,
ShadowReferenceAttributeDefinition, Referencable, ShadowReferenceAttribute>
-
cloneWithNewCardinality
@NotNull @NotNull ShadowReferenceAttributeDefinition cloneWithNewCardinality(int newMinOccurs, int newMaxOccurs)
-