Interface ShadowReferenceAttributeDefinition
- All Superinterfaces:
Cloneable
,DebugDumpable
,Definition
,Freezable
,ItemDefinition<PrismReference>
,LayeredDefinition
,LivePrismItemDefinition
,PrismItemAccessDefinition
,PrismItemBasicDefinition
,PrismItemMiscDefinition
,PrismItemStorageDefinition
,PrismLifecycleDefinition
,PrismPresentationDefinition
,PrismReferenceDefinition
,ResourceObjectInboundDefinition.ItemInboundDefinition
,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 TypeMethodDescription@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.<T extends ItemDefinition<?>>
TfindItemDefinition
(@NotNull ItemPath path, @NotNull Class<T> clazz) Used to find a matching item definition _within_ this definition.@NotNull ShadowReferenceParticipantRole
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.Deprecated.default @NotNull String
default @NotNull ResourceObjectClassDefinition
Returns the object class definition of the immediate target object.default @NotNull QName
@NotNull Collection<ShadowRelationParticipantType>
Returns types of the objects on the other side.instantiateFromIdentifierRealValue
(@NotNull QName identifierName, @NotNull Object realValue) boolean
Very poorly defined method; TODO reconsider.default boolean
default boolean
matches
(@NotNull ShadowType potentialTarget) 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
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.ResourceObjectInboundDefinition.ItemInboundDefinition
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, isVisible, 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.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. -
isTargetingSingleEmbeddedObjectClass
default boolean isTargetingSingleEmbeddedObjectClass() -
findItemDefinition
<T extends ItemDefinition<?>> T findItemDefinition(@NotNull @NotNull ItemPath path, @NotNull @NotNull Class<T> clazz) Description copied from interface:LivePrismItemDefinition
Used to find a matching item definition _within_ this definition. Treats e.g. de-referencing in prism references.- Specified by:
findItemDefinition
in interfaceLivePrismItemDefinition
- Specified by:
findItemDefinition
in interfaceShadowItemDefinition
-
getTargetObjectClass
Returns the object class definition of the immediate target object. Fails if there's not exactly one. TEMPORARY IMPLEMENTATION; this should be resolved during definition parsing/creation. -
getTargetObjectClassName
-
matches
-
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. -
getRepresentativeTargetObjectDefinition
Deprecated.TODO reconsider this: which definition should we provide as the representative one? There can be many. -
instantiateFromIdentifierRealValue
@TestOnly ShadowReferenceAttributeValue instantiateFromIdentifierRealValue(@NotNull @NotNull QName identifierName, @NotNull @NotNull Object realValue) throws SchemaException - Throws:
SchemaException
-
createEmptyDelta
ReferenceDelta createEmptyDelta() -
getSimulationDefinition
SimulatedShadowReferenceTypeDefinition getSimulationDefinition() -
getSimulationDefinitionRequired
SimulatedShadowReferenceTypeDefinition getSimulationDefinitionRequired() -
isEntitlement
boolean isEntitlement()Very poorly defined method; TODO reconsider. -
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)
-