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.DefinitionMutatorNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.ItemDefinition
ItemDefinition.ItemDefinitionLikeBuilder, ItemDefinition.ItemDefinitionMutatorNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
PrismItemAccessDefinition.Data, PrismItemAccessDefinition.Delegable, PrismItemAccessDefinition.Info, PrismItemAccessDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinition
PrismItemBasicDefinition.Data, PrismItemBasicDefinition.Delegable, PrismItemBasicDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemMiscDefinition
PrismItemMiscDefinition.Data, PrismItemMiscDefinition.Delegable, PrismItemMiscDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition
PrismItemStorageDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
PrismLifecycleDefinition.Data, PrismLifecycleDefinition.Delegable, PrismLifecycleDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
PrismPresentationDefinition.Data, PrismPresentationDefinition.Delegable, PrismPresentationDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismReferenceDefinition
PrismReferenceDefinition.PrismReferenceDefinitionBuilder, PrismReferenceDefinition.PrismReferenceDefinitionMutatorNested 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 ShadowReferenceAttributeDefinitionclone()@NotNull ShadowReferenceAttributeDefinitioncloneWithNewCardinality(int newMinOccurs, int newMaxOccurs) default @NotNull ObjectFiltercreateTargetObjectsFilter(boolean resourceSafe) Returns a filter that provides all shadows eligible as the target value for this reference attribute.@NotNull ResourceObjectDefinitionONLY FOR SUBJECT-SIDE PARTICIPANT (and always non-null for it) Returns generalized definition for objects at the object (target) side.@NotNull ShadowReferenceParticipantRoleWhat 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.default @NotNull Stringdefault @NotNull QNameReturns the target object class name.@NotNull Collection<ShadowRelationParticipantType>Returns types of the objects on the other side.default booleanReturns `true` if the reference points to an embedded object class.default booleanmatches(@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, debugDumpLazilyMethods inherited from interface com.evolveum.midpoint.prism.Definition
checkMutableOnExposing, debugDump, getAnnotation, getAnnotations, getMergerIdentifier, getMergerInstance, getMutabilityFlag, getNaturalKeyConstituents, getNaturalKeyInstance, getSchemaContextDefinition, getTypeName, isAbstract, isElaborate, isOptionalCleanup, isRuntimeSchemaMethods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutableMethods inherited from interface com.evolveum.midpoint.prism.ItemDefinition
cloneWithNewName, createEmptyDelta, debugDumpShortToString, deepClone, getProcessing, getSubstitutionHead, getValueEnumerationRef, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIgnored, isInherited, isOperational, structuredTypeMethods inherited from interface com.evolveum.midpoint.schema.processor.LayeredDefinition
getCurrentLayerMethods inherited from interface com.evolveum.midpoint.prism.LivePrismItemDefinition
findItemDefinition, isValidForMethods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
canAdd, canModify, canRead, getInfoMethods inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinition
getItemName, getMaxOccurs, getMinOccurs, getTypeName, isMandatory, isMultiValue, isOptional, isSingleValueMethods inherited from interface com.evolveum.midpoint.prism.PrismItemMiscDefinition
getProcessingMethods inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition
isIndexed, isIndexOnly, isSearchableMethods inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
getDeprecatedSince, getPlannedRemoval, getRemovedSince, getSchemaMigrations, isDeprecated, isExperimental, isRemovedMethods inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
getDiagrams, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, isEmphasizedMethods inherited from interface com.evolveum.midpoint.prism.PrismReferenceDefinition
getTargetObjectDefinition, getTargetTypeName, instantiate, instantiate, isComposite, migrateIfNeeded, mutatorMethods inherited from interface com.evolveum.midpoint.schema.processor.ResourceObjectInboundProcessingDefinition.ItemInboundProcessingDefinition
getCorrelatorDefinitionMethods inherited from interface com.evolveum.midpoint.prism.schema.SchemaLookup.Aware
schemaLookupMethods 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, setOverrideCanReadMethods inherited from interface com.evolveum.midpoint.schema.processor.ShadowAttributeUcfDefinition
getFrameworkAttributeName, getNativeAttributeName, getReturnedByDefaultMethods inherited from interface com.evolveum.midpoint.schema.processor.ShadowItemDefinition
isVisibleMethods inherited from interface com.evolveum.midpoint.schema.processor.ShadowItemLayeredDefinition
canAdd, canModify, canRead, getLimitations, getMaxOccurs, getMinOccurs, getProcessing, isMandatory, isMultiValue, isOptional, isSingleValueMethods inherited from interface com.evolveum.midpoint.util.ShortDumpable
shortDump, shortDump, shortDumpLazilyMethods 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) - orCompositeObjectDefinitionif 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:
clonein interfaceDefinition- Specified by:
clonein interfaceItemDefinition<PrismReference>- Specified by:
clonein interfacePrismReferenceDefinition- Specified by:
clonein interfaceShadowAttributeDefinition<ShadowReferenceAttributeValue,ShadowReferenceAttributeDefinition, Referencable, ShadowReferenceAttribute>
-
cloneWithNewCardinality
@NotNull @NotNull ShadowReferenceAttributeDefinition cloneWithNewCardinality(int newMinOccurs, int newMaxOccurs)
-