Interface ShadowAssociationDefinition
- All Superinterfaces:
Cloneable,DebugDumpable,Definition,Freezable,ItemDefinition<PrismContainer<ShadowAssociationValueType>>,LivePrismItemDefinition,LocalItemDefinitionStore,PrismContainerDefinition<ShadowAssociationValueType>,PrismItemAccessDefinition,PrismItemBasicDefinition,PrismItemStorageDefinition,PrismLifecycleDefinition,PrismPresentationDefinition,ResourceObjectInboundProcessingDefinition.ItemInboundProcessingDefinition,Revivable,SchemaLookup.Aware,Serializable,ShadowItemDefinition,ShadowItemLayeredDefinition,SmartVisitable<Definition>,Visitable<Definition>
- All Known Implementing Classes:
ShadowAssociationDefinitionImpl
public interface ShadowAssociationDefinition
extends PrismContainerDefinition<ShadowAssociationValueType>, ResourceObjectInboundProcessingDefinition.ItemInboundProcessingDefinition, ShadowItemDefinition
Definition of a
ShadowAssociation, e.g., `ri:group`.- See Also:
-
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.PrismContainerDefinition
PrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>Nested 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.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.Mutable -
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING -
Method Summary
Modifier and TypeMethodDescription@NotNull ShadowAssociationDefinitionclone()default ObjectFiltercreateTargetObjectsFilter(boolean resourceSafe) Creates a filter that provides all shadows eligible as the target value for this association.default ShadowAssociationValuecreateValueFromDefaultObject(@NotNull AbstractShadow object) Call only on simple associations!default ShadowAssociationValuecreateValueFromDefaultObjectRef(@NotNull ShadowReferenceAttributeValue refAttrValue) Call only on simple associations!default ShadowAssociationValuecreateValueFromFullDefaultObject(@NotNull AbstractShadow object) Call only on simple associations!default Collection<ShadowAssociationValue>createValuesFromDefaultObjects(Collection<? extends AbstractShadow> objects) Call only on simple associations!<T extends ItemDefinition<?>>
TfindItemDefinition(@NotNull ItemPath path, @NotNull Class<T> clazz) Used to find a matching item definition _within_ this definition.default @NotNull ShadowItemDefinitionfindObjectRefDefinitionRequired(@NotNull ItemName itemName) default @NotNull ShadowItemDefinitionfindSimpleAttributeDefinitionRequired(@NotNull ItemName itemName) @NotNull ResourceObjectDefinitionReturns the association object definition (for complex associations), or fails (for simple ones).@NotNull QNamedefault ResourceObjectDefinition@NotNull List<InboundMappingType>To be used only for trivial associations; moreover, replaced by mark-based tolerance.@Nullable ShadowAssociationDefinitionTypeUse with care.@Nullable ShadowAssociationTypeDefinitionTypeUse with care.default @NotNull Collection<ShadowRelationParticipantType>Provides information on acceptable types of shadows participating in this association as (the one) object.default @NotNull Collection<QName>Returns the name(s) of participant(s) playing the role of association object: - Exactly one for simple associations@NotNull com.google.common.collect.Multimap<QName,ShadowRelationParticipantType> Provides information on acceptable types of shadows participating in this association as objects.@NotNull Collection<MappingType>@NotNull ShadowReferenceAttributeDefinitiondefault @NotNull Stringdefault @NotNull QNameCall only on simple associations!default @NotNull ItemPathTo be used only for trivial associations; moreover, replaced by mark-based tolerance.@NotNull ShadowAssociationCreate an item instance.booleanTrue if this is a "complex" association (with association data object), false if it's a trivial one.booleanIs at least one of the object-side participants an entitlement?booleandefault booleanmatches(@NotNull ShadowType potentialTarget) 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, debugDumpShortToString, deepClone, getProcessing, getSubstitutionHead, getValueEnumerationRef, instantiate, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIgnored, isInherited, isOperationalMethods inherited from interface com.evolveum.midpoint.prism.LivePrismItemDefinition
isValidForMethods inherited from interface com.evolveum.midpoint.prism.LocalItemDefinitionStore
containsItemDefinition, findContainerDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinition, findLocalItemDefinitionByIteration, findPropertyDefinition, findReferenceDefinitionMethods inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinition
canRepresent, cloneWithNewDefinition, cloneWithNewType, createEmptyDelta, createValue, getAlwaysUseForEquals, getCompileTimeClass, getComplexTypeDefinition, getDefinitions, getItemNames, getPropertyDefinitions, getTypeClass, isAlwaysUseForEquals, isCompletelyDefined, isEmpty, mutator, replaceDefinition, schemaLookup, structuredTypeMethods 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.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.schema.processor.ResourceObjectInboundProcessingDefinition.ItemInboundProcessingDefinition
getCorrelatorDefinitionMethods inherited from interface com.evolveum.midpoint.schema.processor.ShadowItemDefinition
getLifecycleState, isVisibleMethods inherited from interface com.evolveum.midpoint.schema.processor.ShadowItemLayeredDefinition
canAdd, canModify, canRead, getLimitations, getMaxOccurs, getMinOccurs, getProcessing, isIgnored, isMandatory, isMultiValue, isOptional, isSingleValueMethods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
accept
-
Method Details
-
isComplex
boolean isComplex()True if this is a "complex" association (with association data object), false if it's a trivial one. -
getAssociationDataObjectDefinition
Returns the association object definition (for complex associations), or fails (for simple ones). -
getObjectParticipants
@NotNull @NotNull com.google.common.collect.Multimap<QName,ShadowRelationParticipantType> getObjectParticipants()Provides information on acceptable types of shadows participating in this association as objects. These come from the underlying reference attribute definition, but can be further restricted by the association type definition. -
getObjectParticipant
Provides information on acceptable types of shadows participating in this association as (the one) object. Fails if there are no or multiple objects.- See Also:
-
getObjectParticipantNames
Returns the name(s) of participant(s) playing the role of association object: - Exactly one for simple associations. - Zero, one, or more for complex associations. -
getSingleObjectParticipantName
Call only on simple associations!- Throws:
SchemaException
-
matches
-
createTargetObjectsFilter
Creates a filter that provides all shadows eligible as the target value for this association. For complex associations, a filter for association data objects is returned. -
getGeneralizedObjectSideObjectDefinition
-
instantiate
Description copied from interface:ItemDefinitionCreate an item instance. Definition name or default name will be used as an element name for the instance. The instance will otherwise be empty.- Specified by:
instantiatein interfaceItemDefinition<PrismContainer<ShadowAssociationValueType>>- Throws:
SchemaException
-
createValueFromFullDefaultObject
default ShadowAssociationValue createValueFromFullDefaultObject(@NotNull @NotNull AbstractShadow object) throws SchemaException Call only on simple associations!- Throws:
SchemaException
-
createValueFromDefaultObject
default ShadowAssociationValue createValueFromDefaultObject(@NotNull @NotNull AbstractShadow object) throws SchemaException Call only on simple associations!- Throws:
SchemaException
-
createValuesFromDefaultObjects
default Collection<ShadowAssociationValue> createValuesFromDefaultObjects(Collection<? extends AbstractShadow> objects) throws SchemaException Call only on simple associations!- Throws:
SchemaException
-
createValueFromDefaultObjectRef
default ShadowAssociationValue createValueFromDefaultObjectRef(@NotNull @NotNull ShadowReferenceAttributeValue refAttrValue) throws SchemaException Call only on simple associations!- Throws:
SchemaException
-
createEmptyDelta
ContainerDelta<ShadowAssociationValueType> createEmptyDelta() -
isEntitlement
boolean isEntitlement()Is at least one of the object-side participants an entitlement? -
getResourceOid
-
clone
- Specified by:
clonein interfaceDefinition- Specified by:
clonein interfaceItemDefinition<PrismContainer<ShadowAssociationValueType>>- Specified by:
clonein interfacePrismContainerDefinition<ShadowAssociationValueType>
-
findItemDefinition
<T extends ItemDefinition<?>> T findItemDefinition(@NotNull @NotNull ItemPath path, @NotNull @NotNull Class<T> clazz) Description copied from interface:LivePrismItemDefinitionUsed to find a matching item definition _within_ this definition. Treats e.g. de-referencing in prism references.- Specified by:
findItemDefinitionin interfaceLivePrismItemDefinition- Specified by:
findItemDefinitionin interfaceLocalItemDefinitionStore
-
getOutboundMappingBeans
-
getInboundMappingBeans
- Specified by:
getInboundMappingBeansin interfaceResourceObjectInboundProcessingDefinition.ItemInboundProcessingDefinition
-
getReferenceAttributeDefinition
-
getStandardPath
-
getTolerantValuePatterns
To be used only for trivial associations; moreover, replaced by mark-based tolerance. -
getIntolerantValuePatterns
To be used only for trivial associations; moreover, replaced by mark-based tolerance. -
isTolerant
boolean isTolerant() -
getModernAssociationDefinitionBean
Use with care. Please do not modify the returned value. -
getModernAssociationTypeDefinitionBean
Use with care. Please do not modify the returned value. -
getAssociationTypeName
-
findSimpleAttributeDefinitionRequired
@NotNull default @NotNull ShadowItemDefinition findSimpleAttributeDefinitionRequired(@NotNull @NotNull ItemName itemName) throws SchemaException - Throws:
SchemaException
-
findObjectRefDefinitionRequired
@NotNull default @NotNull ShadowItemDefinition findObjectRefDefinitionRequired(@NotNull @NotNull ItemName itemName) throws SchemaException - Throws:
SchemaException
-