Class ShadowReferenceAttributeDefinitionImpl
java.lang.Object
com.evolveum.midpoint.prism.AbstractFreezable
com.evolveum.midpoint.schema.processor.ShadowAttributeDefinitionImpl<ShadowReferenceAttribute,ShadowAssociationValueType,NativeShadowReferenceAttributeDefinition>
com.evolveum.midpoint.schema.processor.ShadowReferenceAttributeDefinitionImpl
- All Implemented Interfaces:
Definition
,Definition.DefinitionMutator
,Freezable
,ItemDefinition<PrismContainer<ShadowAssociationValueType>>
,ItemDefinition.ItemDefinitionMutator
,LivePrismItemDefinition
,LocalItemDefinitionStore
,PrismContainerDefinition<ShadowAssociationValueType>
,PrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType>
,PrismItemAccessDefinition
,PrismItemAccessDefinition.Mutable
,PrismItemBasicDefinition
,PrismItemBasicDefinition.Mutable
,PrismItemMiscDefinition
,PrismItemStorageDefinition
,PrismItemStorageDefinition.Mutable
,PrismLifecycleDefinition
,PrismLifecycleDefinition.Mutable
,PrismPresentationDefinition
,PrismPresentationDefinition.Mutable
,Revivable
,SmartVisitable<Definition>
,Visitable<Definition>
,LayeredDefinition
,ResourceObjectInboundDefinition.ItemInboundDefinition
,ShadowAttributeDefinition<ShadowReferenceAttribute,
,ShadowAssociationValueType> ShadowItemLayeredDefinition
,ShadowItemLifecycleDefinitionDefaults
,ShadowItemUcfDefinition
,ShadowReferenceAttributeDefinition
,DebugDumpable
,ShortDumpable
,Serializable
,Cloneable
public class ShadowReferenceAttributeDefinitionImpl
extends ShadowAttributeDefinitionImpl<ShadowReferenceAttribute,ShadowAssociationValueType,NativeShadowReferenceAttributeDefinition>
implements ShadowReferenceAttributeDefinition, PrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType>
Definition of a shadow association item, e.g., `ri:group`.
Note that unlike the attributes, here the
ShadowAttributeDefinitionImpl.nativeDefinition
may be generated artificially
based on simulated ReferencesCapabilityType
definition.
TODO various options for configuring associations
TODO Effectively immutable? (if constituent definitions are immutable), except for the ability of
changing the maxOccurs
value. - is this still true?- See Also:
-
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.PrismContainerDefinition
PrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
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.PrismItemAccessDefinition.Mutable
PrismItemAccessDefinition.Mutable.Delegable
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.PrismItemBasicDefinition.Mutable
PrismItemBasicDefinition.Mutable.Delegable
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.PrismLifecycleDefinition.Mutable
PrismLifecycleDefinition.Mutable.Delegable
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.PrismPresentationDefinition.Mutable
PrismPresentationDefinition.Mutable.Delegable
Nested classes/interfaces inherited from interface com.evolveum.midpoint.schema.processor.ShadowItemUcfDefinition
ShadowItemUcfDefinition.Data, ShadowItemUcfDefinition.Delegable, ShadowItemUcfDefinition.Mutable
-
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
Fields inherited from interface com.evolveum.midpoint.schema.processor.ShadowReferenceAttributeDefinition
VALUE
-
Method Summary
Modifier and TypeMethodDescriptionvoid
boolean
accept
(Visitor<Definition> visitor, SmartVisitation<Definition> visitation) void
boolean
canRepresent
(@NotNull QName type) TODOclone()
cloneWithNewDefinition
(QName newItemName, ItemDefinition<?> newDefinition) TODOcloneWithNewName
(@NotNull ItemName itemName) Returns a clone of this definition, but with name changed to the provided one.@NotNull PrismContainerDefinition<?>
cloneWithNewType
(@NotNull QName newTypeName, @NotNull ComplexTypeDefinition newCtd) Changes the type name and definition for this PCD.createContainerDefinition
(@NotNull QName name, @NotNull ComplexTypeDefinition ctd, int minOccurs, int maxOccurs) createContainerDefinition
(QName name, QName typeName, int minOccurs, int maxOccurs) @NotNull ContainerDelta<ShadowAssociationValueType>
createEmptyDelta
(ItemPath path) Creates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.createPropertyDefinition
(String localName, QName propType) createPropertyDefinition
(QName name, QName propType) createPropertyDefinition
(QName name, QName propType, int minOccurs, int maxOccurs) @NotNull ObjectFilter
Creates a filter that provides all shadows eligible as the target value for this association.TODOdebugDump
(int indent) void
Used in debugDumping items.deepClone
(@NotNull DeepCloneOperation operation) TODO documentboolean
protected void
<ID extends ItemDefinition<?>>
IDfindItemDefinition
(@NotNull ItemPath path, @NotNull Class<ID> clazz) Used to find a matching item definition _within_ this definition.Creates a view of the current definition for a given layer.@Nullable ShadowAssociationDefinitionType
@Nullable ShadowAssociationTypeDefinitionType
Static (compile-time) class holding the container values.@NotNull ComplexTypeDefinition
Definition of the container values.Return a human readable name of this class suitable for logs.@NotNull List<? extends ItemDefinition<?>>
Returns a list of item definitions in this container.@NotNull Collection<AssociationParticipantType>
Returns "immediate neighbors".int
Returns the number of maximal value occurrences.Returns set of property definitions.@NotNull Collection<ResourceObjectInboundDefinition>
@NotNull ResourceObjectDefinition
TODO inspect calls to this method; take specific embedded shadow into account (if possible)!@Nullable SchemaContextDefinition
@Nullable SimulatedShadowReferenceTypeDefinition
@NotNull ItemPath
@NotNull Class<ShadowAssociationValueType>
Returns a compile-time class that is used to represent items.@NotNull QName
Returns a name of the type for this definition.int
hashCode()
instantiateFromIdentifierRealValue
(@NotNull QName identifierName, @NotNull Object realValue) boolean
isEmpty()
TODOboolean
boolean
isRaw()
boolean
If `true`, the item does not exist on the resource, but is simulated by midPoint.boolean
isValidFor
(@NotNull QName elementQName, @NotNull Class<? extends ItemDefinition<?>> clazz, boolean caseInsensitive) Returns true if this definition is valid for given element name and definition class, in either case-sensitive (the default) or case-insensitive way.mutator()
Returns an interface to mutate this definition.void
replaceDefinition
(QName itemName, ItemDefinition<?> newDefinition) TODOvoid
revive
(PrismContext prismContext) TODO: Is revive necessary if prism context is static? TODO document (if it's found to be necessary)void
setAlwaysUseForEquals
(boolean alwaysUseForEquals) void
setCanAdd
(boolean val) void
setCanModify
(boolean val) void
setCanRead
(boolean val) void
setCompileTimeClass
(Class<ShadowAssociationValueType> compileTimeClass) void
setComplexTypeDefinition
(ComplexTypeDefinition complexTypeDefinition) void
setDeprecated
(boolean deprecated) void
setDeprecatedSince
(String value) void
setDiagrams
(List<ItemDiagramSpecification> value) void
setDisplayHint
(DisplayHint displayHint) void
setDisplayName
(String displayName) void
setDisplayOrder
(Integer displayOrder) void
setDocumentation
(String documentation) void
setDynamic
(boolean value) void
setElaborate
(boolean value) void
setEmphasized
(boolean emphasized) void
setExperimental
(boolean experimental) void
void
setHeterogeneousListItem
(boolean value) void
setIndexed
(Boolean indexed) void
setIndexOnly
(boolean value) void
setInherited
(boolean value) void
setMaxOccurs
(int value) void
setMergerIdentifier
(String value) void
setMinOccurs
(int value) void
setNaturalKeyConstituents
(List<QName> naturalKeyConstituents) void
setOperational
(boolean operational) void
setOptionalCleanup
(boolean optionalCleanup) void
setPlannedRemoval
(String value) void
setProcessing
(ItemProcessing processing) void
void
setRemoved
(boolean removed) void
setRemovedSince
(String removedSince) void
setRuntimeSchema
(boolean value) void
setSchemaContextDefinition
(SchemaContextDefinition schemaContextDefinition) void
setSchemaMigrations
(List<SchemaMigration> value) void
setSearchable
(boolean value) void
setSubstitutionHead
(QName value) void
setValueEnumerationRef
(PrismReferenceValue valueEnumerationRef) void
Show the content of the object intended for diagnostics.Methods inherited from class com.evolveum.midpoint.schema.processor.ShadowAttributeDefinitionImpl
canAdd, canAdd, canModify, canModify, canRead, canRead, debugDump, getAnnotation, getAnnotations, getChangeApplicationMode, getCurrentLayer, getDescription, getDiagrams, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getFetchStrategy, getFrameworkAttributeName, getHelp, getInboundMappingBeans, getIntolerantValuePatterns, getItemName, getLifecycleState, getLimitations, getMaxOccurs, getMergerIdentifier, getMergerInstance, getMinOccurs, getMinOccurs, getModificationPriority, getNativeAttributeName, getNaturalKeyConstituents, getNaturalKeyInstance, getOutboundMappingBean, getProcessing, getProcessing, getReadReplaceMode, getReturnedByDefault, getSchemaMigrations, getStorageStrategy, getSubstitutionHead, getTolerantValuePatterns, getValueEnumerationRef, hasRefinements, instantiate, instantiate, isAbstract, isAlwaysUseForEquals, isCached, isDynamic, isElaborate, isEmphasized, isExclusiveStrong, isHeterogeneousListItem, isIndexed, isIndexOnly, isInherited, isOperational, isOptionalCleanup, isRuntimeSchema, isTolerant, isVolatilityTrigger, performFreeze, setAnnotation, setOverrideCanAdd, setOverrideCanModify, setOverrideCanRead, structuredType, toString
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.Definition
checkMutableOnExposing, debugDump, getAnnotation, getAnnotations, getMergerIdentifier, getMergerInstance, getMutabilityFlag, getNaturalKeyConstituents, getNaturalKeyInstance, isAbstract, isElaborate, isOptionalCleanup, isRuntimeSchema
Methods inherited from interface com.evolveum.midpoint.prism.Definition.DefinitionMutator
setAnnotation
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutable
Methods inherited from interface com.evolveum.midpoint.prism.ItemDefinition
getProcessing, getSubstitutionHead, getValueEnumerationRef, instantiate, instantiate, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIgnored, isInherited, isOperational
Methods inherited from interface com.evolveum.midpoint.prism.ItemDefinition.ItemDefinitionMutator
setIgnored
Methods inherited from interface com.evolveum.midpoint.schema.processor.LayeredDefinition
getCurrentLayer
Methods inherited from interface com.evolveum.midpoint.prism.LocalItemDefinitionStore
containsItemDefinition, findContainerDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinition, findPropertyDefinition, findReferenceDefinition
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinition
getAlwaysUseForEquals, getItemNames, isAlwaysUseForEquals, isCompletelyDefined, structuredType
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinition.PrismContainerDefinitionMutator
setAlwaysUseForEquals
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
canAdd, canModify, canRead, getInfo
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition.Mutable
setInfo
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemBasicDefinition
getItemName, getMinOccurs, 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
getSchemaMigrations
Methods inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
getDiagrams, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, isEmphasized
Methods inherited from interface com.evolveum.midpoint.schema.processor.ShadowAttributeDefinition
debugDump, getChangeApplicationMode, getDescription, getFetchStrategy, getInboundMappingBeans, getIntolerantValuePatterns, getLifecycleState, getModificationPriority, getOutboundMappingBean, getReadReplaceMode, getStorageStrategy, getTolerantValuePatterns, hasInboundMapping, hasOutboundMapping, hasRefinements, instantiate, instantiate, isCached, isEffectivelyCached, isExclusiveStrong, isIgnored, isIndexOnly, isReturnedByDefault, isTolerant, isVisible, isVisible, isVolatilityTrigger, setOverrideCanAdd, setOverrideCanModify, setOverrideCanRead
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.schema.processor.ShadowItemLifecycleDefinitionDefaults
getDeprecatedSince, getPlannedRemoval, getRemovedSince, isDeprecated, isExperimental, isRemoved
Methods inherited from interface com.evolveum.midpoint.schema.processor.ShadowItemUcfDefinition
getFrameworkAttributeName, getNativeAttributeName, getReturnedByDefault
Methods inherited from interface com.evolveum.midpoint.schema.processor.ShadowReferenceAttributeDefinition
getAssociationObjectInformation, getImmediateTargetObjectClass, getObjectDefinitionsFor, getObjectParticipants, getResourceOid, hasAssociationObject, hasModernOutbound, matches
Methods inherited from interface com.evolveum.midpoint.util.ShortDumpable
shortDump, shortDumpLazily
-
Method Details
-
getRepresentativeTargetObjectDefinition
TODO inspect calls to this method; take specific embedded shadow into account (if possible)!- Specified by:
getRepresentativeTargetObjectDefinition
in interfaceShadowReferenceAttributeDefinition
-
isEntitlement
public boolean isEntitlement()- Specified by:
isEntitlement
in interfaceShadowReferenceAttributeDefinition
-
forLayer
@NotNull public @NotNull ShadowReferenceAttributeDefinitionImpl forLayer(@NotNull @NotNull LayerType layer) Description copied from interface:ShadowAttributeDefinition
Creates a view of the current definition for a given layer. (May return even the original object e.g. if the layer matches the current one.)- Specified by:
forLayer
in interfaceShadowAttributeDefinition<ShadowReferenceAttribute,
ShadowAssociationValueType>
-
getTypeName
Description copied from interface:Definition
Returns a name of the type for this definition. The type can be part of the compile-time schema or it can be defined at run time. Examples of the former case are types like c:UserType, xsd:string, or even flexible ones like c:ExtensionType or c:ShadowAttributesType. Examples of the latter case are types used in - custom extensions, like ext:LocationsType (where ext = e.g. http://example.com/extension), - resource schema, like ri:inetOrgPerson (ri = http://.../resource/instance-3), - connector schema, like TODO In XML representation that corresponds to the name of the XSD type. Although beware, the run-time types do not have statically defined structure. And the resource and connector-related types may even represent different kinds of objects within different contexts (e.g. two distinct resources both with ri:AccountObjectClass types). Also note that for complex type definitions, the type name serves as a unique identifier. On the other hand, for item definitions, it is just one of its attributes; primary key is item name in that case. The type name should be fully qualified. (TODO reconsider this)- Specified by:
getTypeName
in interfaceDefinition
- Specified by:
getTypeName
in interfacePrismItemBasicDefinition
- Returns:
- the type name
-
accept
- Specified by:
accept
in interfaceVisitable<Definition>
- Overrides:
accept
in classShadowAttributeDefinitionImpl<ShadowReferenceAttribute,
ShadowAssociationValueType, NativeShadowReferenceAttributeDefinition>
-
getMaxOccurs
public int getMaxOccurs()Description copied from interface:PrismItemBasicDefinition
Returns the number of maximal value occurrences. Any negative number means "unbounded".- Specified by:
getMaxOccurs
in interfacePrismItemBasicDefinition
- Overrides:
getMaxOccurs
in classShadowAttributeDefinitionImpl<ShadowReferenceAttribute,
ShadowAssociationValueType, NativeShadowReferenceAttributeDefinition>
-
setMinOccurs
public void setMinOccurs(int value) - Specified by:
setMinOccurs
in interfacePrismItemBasicDefinition.Mutable
-
setMaxOccurs
public void setMaxOccurs(int value) - Specified by:
setMaxOccurs
in interfacePrismItemBasicDefinition.Mutable
-
getAssociationDefinitionBean
- Specified by:
getAssociationDefinitionBean
in interfaceShadowReferenceAttributeDefinition
-
getAssociationTypeDefinitionBean
- Specified by:
getAssociationTypeDefinitionBean
in interfaceShadowReferenceAttributeDefinition
-
isValidFor
public boolean isValidFor(@NotNull @NotNull QName elementQName, @NotNull @NotNull Class<? extends ItemDefinition<?>> clazz, boolean caseInsensitive) Description copied from interface:LivePrismItemDefinition
Returns true if this definition is valid for given element name and definition class, in either case-sensitive (the default) or case-insensitive way. Used e.g. for "slow" path lookup where we iterate over all definitions in a complex type.- Specified by:
isValidFor
in interfaceLivePrismItemDefinition
-
findItemDefinition
public <ID extends ItemDefinition<?>> ID findItemDefinition(@NotNull @NotNull ItemPath path, @NotNull @NotNull Class<ID> 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 interfaceLocalItemDefinitionStore
-
getCompileTimeClass
Description copied from interface:PrismContainerDefinition
Static (compile-time) class holding the container values. May be null. (Let's not mark it as @Nullable to avoid lots of warnings.)- Specified by:
getCompileTimeClass
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
getComplexTypeDefinition
Description copied from interface:PrismContainerDefinition
Definition of the container values. May be null. (Let's not mark it as @Nullable to avoid lots of warnings.) Note that individual values can hold their own (more specific) complex type definitions.- Specified by:
getComplexTypeDefinition
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
getDefinitions
Description copied from interface:PrismContainerDefinition
Returns a list of item definitions in this container. It is intentionally aList
because it is ordered. (To provide standard format for serialization.) Usually obtained fromComplexTypeDefinition
. So please do not modify the content of the list!- Specified by:
getDefinitions
in interfaceLocalItemDefinitionStore
- Specified by:
getDefinitions
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
getPropertyDefinitions
Description copied from interface:PrismContainerDefinition
Returns set of property definitions. The set contains all property definitions of all types that were parsed. Order of definitions is insignificant. The returned collection is immutable or detached from the source. Don't try to modify it. It may fail or the changes may be lost.- Specified by:
getPropertyDefinitions
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
createEmptyDelta
Description copied from interface:ItemDefinition
Creates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.- Specified by:
createEmptyDelta
in interfaceItemDefinition<PrismContainer<ShadowAssociationValueType>>
- Specified by:
createEmptyDelta
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
clone
- Specified by:
clone
in interfaceDefinition
- Specified by:
clone
in interfaceItemDefinition<PrismContainer<ShadowAssociationValueType>>
- Specified by:
clone
in interfacePrismContainerDefinition<ShadowAssociationValueType>
- Specified by:
clone
in interfaceShadowAttributeDefinition<ShadowReferenceAttribute,
ShadowAssociationValueType> - Specified by:
clone
in interfaceShadowReferenceAttributeDefinition
- Specified by:
clone
in classShadowAttributeDefinitionImpl<ShadowReferenceAttribute,
ShadowAssociationValueType, NativeShadowReferenceAttributeDefinition>
-
cloneWithNewDefinition
public PrismContainerDefinition<ShadowAssociationValueType> cloneWithNewDefinition(QName newItemName, ItemDefinition<?> newDefinition) Description copied from interface:PrismContainerDefinition
TODO- Specified by:
cloneWithNewDefinition
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
replaceDefinition
Description copied from interface:PrismContainerDefinition
TODO- Specified by:
replaceDefinition
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
createValue
Description copied from interface:PrismContainerDefinition
TODO- Specified by:
createValue
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
instantiateFromIdentifierRealValue
public ShadowAssociationValue instantiateFromIdentifierRealValue(@NotNull @NotNull QName identifierName, @NotNull @NotNull Object realValue) throws SchemaException - Specified by:
instantiateFromIdentifierRealValue
in interfaceShadowReferenceAttributeDefinition
- Throws:
SchemaException
-
isEmpty
public boolean isEmpty()Description copied from interface:PrismContainerDefinition
TODO- Specified by:
isEmpty
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
canRepresent
Description copied from interface:PrismContainerDefinition
TODO- Specified by:
canRepresent
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
mutator
@NotNull public @NotNull PrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType> mutator()Description copied from interface:Definition
Returns an interface to mutate this definition.- Specified by:
mutator
in interfaceDefinition
- Specified by:
mutator
in interfaceItemDefinition<PrismContainer<ShadowAssociationValueType>>
- Specified by:
mutator
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
deepClone
public ShadowReferenceAttributeDefinitionImpl deepClone(@NotNull @NotNull DeepCloneOperation operation) Description copied from interface:ItemDefinition
TODO document- Specified by:
deepClone
in interfaceItemDefinition<PrismContainer<ShadowAssociationValueType>>
-
debugDumpShortToString
Description copied from interface:ItemDefinition
Used in debugDumping items. Does not need to have name in it as item already has it. Does not need to have class as that is just too much info that is almost anytime pretty obvious anyway.- Specified by:
debugDumpShortToString
in interfaceItemDefinition<PrismContainer<ShadowAssociationValueType>>
-
extendToString
-
getDebugDumpClassName
Description copied from class:ShadowAttributeDefinitionImpl
Return a human readable name of this class suitable for logs. -
debugDump
- Specified by:
debugDump
in interfaceDebugDumpable
- Overrides:
debugDump
in classShadowAttributeDefinitionImpl<ShadowReferenceAttribute,
ShadowAssociationValueType, NativeShadowReferenceAttributeDefinition>
-
getStandardPath
- Specified by:
getStandardPath
in interfaceShadowAttributeDefinition<ShadowReferenceAttribute,
ShadowAssociationValueType>
-
createEmptyDelta
- Specified by:
createEmptyDelta
in interfaceShadowReferenceAttributeDefinition
-
revive
Description copied from interface:Revivable
TODO: Is revive necessary if prism context is static? TODO document (if it's found to be necessary) -
accept
- Specified by:
accept
in interfaceSmartVisitable<Definition>
- Overrides:
accept
in classShadowAttributeDefinitionImpl<ShadowReferenceAttribute,
ShadowAssociationValueType, NativeShadowReferenceAttributeDefinition> - Returns:
- false if we already was here
-
getHumanReadableDescription
- Specified by:
getHumanReadableDescription
in interfaceShadowAttributeDefinition<ShadowReferenceAttribute,
ShadowAssociationValueType>
-
createTargetObjectsFilter
Description copied from interface:ShadowReferenceAttributeDefinition
Creates a filter that provides all shadows eligible as the target value for this association. FIXME resolve limitations: - single object class is allowed for given association - if multiple object types are there, then the filter is for the whole class - if type type is the default object type, then it's used as such (even if the whole OC should be returned) TODO are these immediate targets (associated objects, if present), or the "final" targets?- Specified by:
createTargetObjectsFilter
in interfaceShadowReferenceAttributeDefinition
-
getSimulationDefinition
- Specified by:
getSimulationDefinition
in interfaceShadowReferenceAttributeDefinition
-
isSimulated
public boolean isSimulated()Description copied from interface:ShadowAttributeDefinition
If `true`, the item does not exist on the resource, but is simulated by midPoint.- Specified by:
isSimulated
in interfaceShadowAttributeDefinition<ShadowReferenceAttribute,
ShadowAssociationValueType>
-
getSimulationDefinitionRequired
- Specified by:
getSimulationDefinitionRequired
in interfaceShadowReferenceAttributeDefinition
-
isRaw
public boolean isRaw() -
shortDump
Description copied from interface:ShortDumpable
Show the content of the object intended for diagnostics. This method is supposed to append a compact, human-readable output in a single line. Unlike toString() method, there is no requirement to identify the actual class or type of the object. It is assumed that the class/type will be obvious from the context in which the output is used.- Specified by:
shortDump
in interfaceShortDumpable
- Overrides:
shortDump
in classShadowAttributeDefinitionImpl<ShadowReferenceAttribute,
ShadowAssociationValueType, NativeShadowReferenceAttributeDefinition> - Parameters:
sb
- StringBuilder to which to a compact one-line content of the object intended for diagnostics by system administrator should be appended.
-
getTypeClass
Description copied from interface:Definition
Returns a compile-time class that is used to represent items. E.g. returns String, Integer, subclasses of Objectable and Containerable and so on.- Specified by:
getTypeClass
in interfaceDefinition
- Specified by:
getTypeClass
in interfacePrismContainerDefinition<ShadowAssociationValueType>
- Specified by:
getTypeClass
in interfaceShadowAttributeDefinition<ShadowReferenceAttribute,
ShadowAssociationValueType>
-
getSchemaContextDefinition
- Specified by:
getSchemaContextDefinition
in interfaceDefinition
-
cloneWithNewName
@NotNull public @NotNull ItemDefinition<PrismContainer<ShadowAssociationValueType>> cloneWithNewName(@NotNull @NotNull ItemName itemName) Description copied from interface:ItemDefinition
Returns a clone of this definition, but with name changed to the provided one.- Specified by:
cloneWithNewName
in interfaceItemDefinition<PrismContainer<ShadowAssociationValueType>>
- See Also:
-
cloneWithNewType
@NotNull public @NotNull PrismContainerDefinition<?> cloneWithNewType(@NotNull @NotNull QName newTypeName, @NotNull @NotNull ComplexTypeDefinition newCtd) Description copied from interface:PrismContainerDefinition
Changes the type name and definition for this PCD. Use only in special cases.- Specified by:
cloneWithNewType
in interfacePrismContainerDefinition<ShadowAssociationValueType>
-
equals
-
hashCode
public int hashCode() -
getCorrelatorDefinition
- Specified by:
getCorrelatorDefinition
in interfaceResourceObjectInboundDefinition.ItemInboundDefinition
-
setCompileTimeClass
- Specified by:
setCompileTimeClass
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType>
-
createPropertyDefinition
public PrismPropertyDefinition<?> createPropertyDefinition(QName name, QName propType, int minOccurs, int maxOccurs) - Specified by:
createPropertyDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType>
-
createPropertyDefinition
- Specified by:
createPropertyDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType>
-
createPropertyDefinition
- Specified by:
createPropertyDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType>
-
createContainerDefinition
public PrismContainerDefinition<?> createContainerDefinition(QName name, QName typeName, int minOccurs, int maxOccurs) - Specified by:
createContainerDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType>
-
createContainerDefinition
public PrismContainerDefinition<?> createContainerDefinition(@NotNull @NotNull QName name, @NotNull @NotNull ComplexTypeDefinition ctd, int minOccurs, int maxOccurs) - Specified by:
createContainerDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType>
-
setComplexTypeDefinition
- Specified by:
setComplexTypeDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<ShadowAssociationValueType>
-
setProcessing
- Specified by:
setProcessing
in interfaceItemDefinition.ItemDefinitionMutator
-
setValueEnumerationRef
- Specified by:
setValueEnumerationRef
in interfaceItemDefinition.ItemDefinitionMutator
-
setOperational
public void setOperational(boolean operational) - Specified by:
setOperational
in interfaceItemDefinition.ItemDefinitionMutator
-
setAlwaysUseForEquals
public void setAlwaysUseForEquals(boolean alwaysUseForEquals) - Specified by:
setAlwaysUseForEquals
in interfaceItemDefinition.ItemDefinitionMutator
-
setDynamic
public void setDynamic(boolean value) - Specified by:
setDynamic
in interfaceItemDefinition.ItemDefinitionMutator
-
setReadOnly
public void setReadOnly()- Specified by:
setReadOnly
in interfaceItemDefinition.ItemDefinitionMutator
-
setDeprecatedSince
- Specified by:
setDeprecatedSince
in interfaceItemDefinition.ItemDefinitionMutator
- Specified by:
setDeprecatedSince
in interfacePrismLifecycleDefinition.Mutable
-
addSchemaMigration
- Specified by:
addSchemaMigration
in interfacePrismLifecycleDefinition.Mutable
-
setSchemaMigrations
- Specified by:
setSchemaMigrations
in interfacePrismLifecycleDefinition.Mutable
-
setDeprecated
public void setDeprecated(boolean deprecated) - Specified by:
setDeprecated
in interfacePrismLifecycleDefinition.Mutable
-
setRemoved
public void setRemoved(boolean removed) - Specified by:
setRemoved
in interfacePrismLifecycleDefinition.Mutable
-
setRemovedSince
- Specified by:
setRemovedSince
in interfacePrismLifecycleDefinition.Mutable
-
setExperimental
public void setExperimental(boolean experimental) - Specified by:
setExperimental
in interfacePrismLifecycleDefinition.Mutable
-
setPlannedRemoval
- Specified by:
setPlannedRemoval
in interfaceItemDefinition.ItemDefinitionMutator
- Specified by:
setPlannedRemoval
in interfacePrismLifecycleDefinition.Mutable
-
setElaborate
public void setElaborate(boolean value) - Specified by:
setElaborate
in interfaceItemDefinition.ItemDefinitionMutator
-
setHeterogeneousListItem
public void setHeterogeneousListItem(boolean value) - Specified by:
setHeterogeneousListItem
in interfaceItemDefinition.ItemDefinitionMutator
-
setSubstitutionHead
- Specified by:
setSubstitutionHead
in interfaceItemDefinition.ItemDefinitionMutator
-
setIndexed
- Specified by:
setIndexed
in interfacePrismItemStorageDefinition.Mutable
-
setIndexOnly
public void setIndexOnly(boolean value) - Specified by:
setIndexOnly
in interfaceItemDefinition.ItemDefinitionMutator
- Specified by:
setIndexOnly
in interfacePrismItemStorageDefinition.Mutable
-
setInherited
public void setInherited(boolean value) - Specified by:
setInherited
in interfaceItemDefinition.ItemDefinitionMutator
-
setSearchable
public void setSearchable(boolean value) - Specified by:
setSearchable
in interfaceItemDefinition.ItemDefinitionMutator
- Specified by:
setSearchable
in interfacePrismItemStorageDefinition.Mutable
-
setOptionalCleanup
public void setOptionalCleanup(boolean optionalCleanup) - Specified by:
setOptionalCleanup
in interfaceDefinition.DefinitionMutator
-
setRuntimeSchema
public void setRuntimeSchema(boolean value) - Specified by:
setRuntimeSchema
in interfaceDefinition.DefinitionMutator
-
setMergerIdentifier
- Specified by:
setMergerIdentifier
in interfaceDefinition.DefinitionMutator
-
setNaturalKeyConstituents
- Specified by:
setNaturalKeyConstituents
in interfaceDefinition.DefinitionMutator
-
setSchemaContextDefinition
- Specified by:
setSchemaContextDefinition
in interfaceDefinition.DefinitionMutator
-
setCanRead
public void setCanRead(boolean val) - Specified by:
setCanRead
in interfacePrismItemAccessDefinition.Mutable
-
setCanModify
public void setCanModify(boolean val) - Specified by:
setCanModify
in interfacePrismItemAccessDefinition.Mutable
-
setCanAdd
public void setCanAdd(boolean val) - Specified by:
setCanAdd
in interfacePrismItemAccessDefinition.Mutable
-
setDisplayHint
- Specified by:
setDisplayHint
in interfacePrismPresentationDefinition.Mutable
-
setEmphasized
public void setEmphasized(boolean emphasized) - Specified by:
setEmphasized
in interfacePrismPresentationDefinition.Mutable
-
setDisplayName
- Specified by:
setDisplayName
in interfacePrismPresentationDefinition.Mutable
-
setDisplayOrder
- Specified by:
setDisplayOrder
in interfacePrismPresentationDefinition.Mutable
-
setHelp
- Specified by:
setHelp
in interfacePrismPresentationDefinition.Mutable
-
setDocumentation
- Specified by:
setDocumentation
in interfacePrismPresentationDefinition.Mutable
-
setDiagrams
- Specified by:
setDiagrams
in interfacePrismPresentationDefinition.Mutable
-
getImmediateTargetParticipantTypes
@NotNull public @NotNull Collection<AssociationParticipantType> getImmediateTargetParticipantTypes()Description copied from interface:ShadowReferenceAttributeDefinition
Returns "immediate neighbors". TODO- Specified by:
getImmediateTargetParticipantTypes
in interfaceShadowReferenceAttributeDefinition
-
getRelevantInboundDefinitions
@NotNull public @NotNull Collection<ResourceObjectInboundDefinition> getRelevantInboundDefinitions()- Specified by:
getRelevantInboundDefinitions
in interfaceShadowAttributeDefinition<ShadowReferenceAttribute,
ShadowAssociationValueType> - Overrides:
getRelevantInboundDefinitions
in classShadowAttributeDefinitionImpl<ShadowReferenceAttribute,
ShadowAssociationValueType, NativeShadowReferenceAttributeDefinition>
-