Class PrismContainerDefinitionImpl<C extends Containerable>
- All Implemented Interfaces:
Definition
,Definition.DefinitionBuilder
,Definition.DefinitionMutator
,DefinitionFragmentBuilder
,Freezable
,ItemDefinition<PrismContainer<C>>
,ItemDefinition.ItemDefinitionLikeBuilder
,ItemDefinition.ItemDefinitionMutator
,LivePrismItemDefinition
,LocalItemDefinitionStore
,PrismContainerDefinition<C>
,PrismContainerDefinition.PrismContainerDefinitionMutator<C>
,PrismItemAccessDefinition
,PrismItemAccessDefinition.Mutable
,PrismItemBasicDefinition
,PrismItemBasicDefinition.Mutable
,PrismItemStorageDefinition
,PrismItemStorageDefinition.Mutable
,PrismLifecycleDefinition
,PrismLifecycleDefinition.Mutable
,PrismPresentationDefinition
,PrismPresentationDefinition.Mutable
,Revivable
,SerializableContainerDefinition
,SerializableDefinition
,SerializableItemDefinition
,SmartVisitable<Definition>
,Visitable<Definition>
,DebugDumpable
,Serializable
,Cloneable
- Direct Known Subclasses:
PrismObjectDefinitionImpl
,ResourceAttributeContainerDefinitionImpl
,ShadowAssociationsContainerDefinitionImpl
Property container groups properties into logical blocks. The reason for grouping may be as simple as better understandability of data structure. But the group usually means different meaning, source or structure of the data. For example, the property container is frequently used to hold properties that are dynamic, not fixed by a static schema. Such grouping also naturally translates to XML and helps to "quarantine" such properties to avoid Unique Particle Attribute problems.
Property Container contains a set of (potentially multi-valued) properties.
The order of properties is not significant, regardless of the fact that it
may be fixed in the XML representation. In the XML representation, each
element inside Property Container must be either Property or a Property
Container.
This class represents schema definition for property container. See
Definition
for more details.
Don't call constructors of this class directly. Use methods in the DefinitionFactory
instead.
- Author:
- Radovan Semancik
- 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.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
-
Field Summary
FieldsFields inherited from class com.evolveum.midpoint.prism.impl.ItemDefinitionImpl
heterogeneousListItem, itemName, processing, substitutionHead
Fields inherited from class com.evolveum.midpoint.prism.impl.DefinitionImpl
deprecated, deprecatedSince, displayHint, displayName, displayOrder, documentation, elaborate, emphasized, experimental, help, isAbstract, isRuntimeSchema, plannedRemoval, removed, removedSince, typeName
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
PrismContainerDefinitionImpl
(@NotNull QName itemName, @NotNull ComplexTypeDefinition complexTypeDefinition) Standard case, instantiating from knownComplexTypeDefinition
(with or without compile time class). -
Method Summary
Modifier and TypeMethodDescriptionboolean
accept
(Visitor<Definition> visitor, SmartVisitation<Definition> visitation) boolean
canRepresent
(@NotNull QName typeName) TODOvoid
@NotNull PrismContainerDefinitionImpl<C>
clone()
Shallow clone@NotNull PrismContainerDefinition<C>
cloneWithNewDefinition
(QName newItemName, ItemDefinition<?> newDefinition) TODO@NotNull PrismContainerDefinition<C>
cloneWithNewName
(@NotNull ItemName newItemName) 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.protected void
createContainerDefinition
(@NotNull QName name, @NotNull ComplexTypeDefinition ctd, int minOccurs, int maxOccurs) createContainerDefinition
(QName name, QName typeName) createContainerDefinition
(QName name, QName typeName, int minOccurs, int maxOccurs) @NotNull ContainerDelta<C>
createEmptyDelta
(ItemPath path) Creates an empty delta (with appropriate implementation class), pointing to this item definition, with a given path.createPropertyDefinition
(String localName, String localTypeName) Creates new instance of property definition and adds it to the container.createPropertyDefinition
(String localName, String localTypeName, int minOccurs, int maxOccurs) Creates new instance of property definition and adds it to the container.createPropertyDefinition
(String localName, QName typeName) Creates new instance of property definition and adds it to the container.createPropertyDefinition
(QName name, QName typeName) Creates new instance of property definition and adds it to the container.createPropertyDefinition
(QName name, QName typeName, int minOccurs, int maxOccurs) Creates new instance of property definition and adds it to the container.TODOdebugDump
(int indent) debugDump
(int indent, IdentityHashMap<Definition, Object> seen) deepClone
(@NotNull DeepCloneOperation operation) Make a deep clone, cloning all the sub-items and definitions.<ID extends ItemDefinition<?>>
IDfindItemDefinition
(@NotNull ItemPath path, @NotNull Class<ID> clazz) Used to find a matching item definition _within_ this definition.Returns list of items which should be always used for equals, even if they are operational, and equivalence strategy does not consider operational data.Static (compile-time) class holding the container values.Definition of the container values.Return a human readable name of this class suitable for logs.@NotNull List<? extends ItemDefinition<?>>
FIXME this looks like outdated description Returns set of property definitions.Returns human-readable name of this class suitable for documentation.Returns set of property definitions.protected String
Returns a compile-time class that is used to represent items.@NotNull PrismContainer<C>
Create an item instance.@NotNull PrismContainer<C>
instantiate
(QName elementName) Create an item instance.boolean
For types: is the type abstract so that it should not be instantiated directly? For items: TODOboolean
isEmpty()
TODOmutator()
Returns an interface to mutate this definition.void
void
replaceDefinition
(QName itemName, ItemDefinition<?> newDefinition) TODOvoid
setAlwaysUseForEquals
(@NotNull Collection<QName> keysElem) Experimental: Use only with care, this overrides behavior of listed operational=true items in equivalence strategies for containers.void
setCompileTimeClass
(Class<C> compileTimeClass) void
setComplexTypeDefinition
(ComplexTypeDefinition complexTypeDefinition) Methods inherited from class com.evolveum.midpoint.prism.impl.ItemDefinitionImpl
canAdd, canModify, canRead, copyDefinitionDataFrom, debugDumpShortToString, debugFlags, debugMultiplicity, equals, extendToString, getItemName, getMaxOccurs, getMergerInstance, getMinOccurs, getObjectBuilt, getProcessing, getSubstitutionHead, getValueEnumerationRef, hashCode, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIndexed, isIndexOnly, isInherited, isOperational, isSearchable, isValidFor, revive, setAlwaysUseForEquals, setCanAdd, setCanModify, setCanRead, setDynamic, setHeterogeneousListItem, setIndexed, setIndexOnly, setInherited, setMaxOccurs, setMinOccurs, setOperational, setProcessing, setReadOnly, setSearchable, setSubstitutionHead, setValueEnumerationRef, toString, useSerializationProxy, writeReplace
Methods inherited from class com.evolveum.midpoint.prism.impl.DefinitionImpl
accept, addSchemaMigration, copyDefinitionDataFrom, extendDumpHeader, getAnnotation, getAnnotation, getAnnotations, getDeprecatedSince, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMergerIdentifier, getNaturalKeyInstance, getPlannedRemoval, getRemovedSince, getSchemaMigrations, getTypeName, isDeprecated, isElaborate, isEmphasized, isExperimental, isOptionalCleanup, isRemoved, isRuntimeSchema, setAbstract, setAnnotation, setDeprecated, setDeprecatedSince, setDiagrams, setDisplayHint, setDisplayName, setDisplayOrder, setDocumentation, setElaborate, setEmphasized, setExperimental, setHelp, setMergerIdentifier, setNaturalKeyConstituents, setOptionalCleanup, setPlannedRemoval, setRemoved, setRemovedSince, setRuntimeSchema, setSchemaContextDefinition, setSchemaMigrations
Methods inherited from class com.evolveum.midpoint.prism.impl.schema.SchemaRegistryStateAware
getSchemaLookup, getSchemaRegistryState, setSchemaRegistryState
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, getAnnotation, getAnnotations, getMergerIdentifier, getMergerInstance, getMutabilityFlag, getNaturalKeyInstance, getTypeName, isElaborate, isOptionalCleanup, isRuntimeSchema
Methods inherited from interface com.evolveum.midpoint.prism.Definition.DefinitionMutator
setAnnotation, setMergerIdentifier, setNaturalKeyConstituents, setOptionalCleanup, setRuntimeSchema, setSchemaContextDefinition
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, freeze, isImmutable
Methods inherited from interface com.evolveum.midpoint.prism.ItemDefinition
debugDumpShortToString, getProcessing, getSubstitutionHead, getValueEnumerationRef, isAlwaysUseForEquals, isDynamic, isHeterogeneousListItem, isIgnored, isInherited, isOperational
Methods inherited from interface com.evolveum.midpoint.prism.ItemDefinition.ItemDefinitionLikeBuilder
getExtraFeaturesToParse
Methods inherited from interface com.evolveum.midpoint.prism.ItemDefinition.ItemDefinitionMutator
setAlwaysUseForEquals, setDeprecatedSince, setDynamic, setElaborate, setHeterogeneousListItem, setIgnored, setIndexOnly, setInherited, setOperational, setPlannedRemoval, setProcessing, setReadOnly, setSearchable, setSubstitutionHead, setValueEnumerationRef
Methods inherited from interface com.evolveum.midpoint.prism.LivePrismItemDefinition
isValidFor
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
getItemNames, isAlwaysUseForEquals, isCompletelyDefined, structuredType
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
canAdd, canModify, canRead, getInfo
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition.Mutable
setCanAdd, setCanModify, setCanRead, setInfo
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.PrismItemBasicDefinition.Mutable
setMaxOccurs, setMinOccurs
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition
isIndexed, isIndexOnly, isSearchable
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemStorageDefinition.Mutable
setIndexed
Methods inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
getDeprecatedSince, getPlannedRemoval, getRemovedSince, getSchemaMigrations, isDeprecated, isExperimental, isRemoved
Methods inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition.Mutable
addSchemaMigration, setDeprecated, setExperimental, setRemoved, setRemovedSince, setSchemaMigrations
Methods inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, isEmphasized
Methods inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition.Mutable
setDiagrams, setDisplayHint, setDisplayName, setDisplayOrder, setDocumentation, setEmphasized, setHelp
Methods inherited from interface com.evolveum.midpoint.prism.schema.SerializableDefinition
getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getExtraFeaturesToSerialize, getHelp, isEmphasized
Methods inherited from interface com.evolveum.midpoint.prism.schema.SerializableItemDefinition
getItemName, getMaxOccurs, getMinOccurs, getProcessing, getTypeName, isIndexed, isOperational
-
Field Details
-
complexTypeDefinition
-
compileTimeClass
-
-
Constructor Details
-
PrismContainerDefinitionImpl
protected PrismContainerDefinitionImpl(@NotNull @NotNull QName itemName, @NotNull @NotNull ComplexTypeDefinition complexTypeDefinition) Standard case, instantiating from knownComplexTypeDefinition
(with or without compile time class).
-
-
Method Details
-
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<C extends Containerable>
-
setCompileTimeClass
- Specified by:
setCompileTimeClass
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
-
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<C extends Containerable>
-
getSchemaNamespace
-
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<C extends Containerable>
-
getComplexTypeDefinitionToSerialize
- Specified by:
getComplexTypeDefinitionToSerialize
in interfaceSerializableContainerDefinition
-
setComplexTypeDefinition
- Specified by:
setComplexTypeDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
-
isAbstract
public boolean isAbstract()Description copied from interface:Definition
For types: is the type abstract so that it should not be instantiated directly? For items: TODO- Specified by:
isAbstract
in interfaceDefinition
- Overrides:
isAbstract
in classDefinitionImpl
-
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
- Overrides:
findItemDefinition
in classItemDefinitionImpl<PrismContainer<C extends Containerable>>
-
getDefinitions
FIXME this looks like outdated description Returns set of property definitions.WARNING: This may return definitions from the associated complex type. Therefore changing the returned set may influence also the complex type definition.
The set contains all property definitions of all types that were parsed. Order of definitions is insignificant.
- Specified by:
getDefinitions
in interfaceLocalItemDefinitionStore
- Specified by:
getDefinitions
in interfacePrismContainerDefinition<C extends Containerable>
- Returns:
- list of definitions
-
checkMutable
public void checkMutable()- Specified by:
checkMutable
in interfaceFreezable
-
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<C extends Containerable>
-
instantiate
Description copied from interface:ItemDefinition
Create 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:
instantiate
in interfaceItemDefinition<C extends Containerable>
- Throws:
SchemaException
-
instantiate
Description copied from interface:ItemDefinition
Create an item instance. Definition name will use provided name. for the instance. The instance will otherwise be empty.- Specified by:
instantiate
in interfaceItemDefinition<C extends Containerable>
- Throws:
SchemaException
-
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<C extends Containerable>
- Specified by:
createEmptyDelta
in interfacePrismContainerDefinition<C extends Containerable>
-
accept
- Specified by:
accept
in interfaceSmartVisitable<C extends Containerable>
- Overrides:
accept
in classDefinitionImpl
- Returns:
- false if we already was here
-
clone
Shallow clone- Specified by:
clone
in interfaceDefinition
- Specified by:
clone
in interfaceItemDefinition<C extends Containerable>
- Specified by:
clone
in interfacePrismContainerDefinition<C extends Containerable>
- Specified by:
clone
in classItemDefinitionImpl<PrismContainer<C extends Containerable>>
-
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<C extends Containerable>
-
cloneWithNewName
@NotNull public @NotNull PrismContainerDefinition<C> cloneWithNewName(@NotNull @NotNull ItemName newItemName) Description copied from interface:ItemDefinition
Returns a clone of this definition, but with name changed to the provided one.- Specified by:
cloneWithNewName
in interfaceItemDefinition<C extends Containerable>
- See Also:
-
copyDefinitionDataFrom
-
deepClone
Description copied from class:ItemDefinitionImpl
Make a deep clone, cloning all the sub-items and definitions.- Specified by:
deepClone
in interfaceItemDefinition<C extends Containerable>
- Overrides:
deepClone
in classItemDefinitionImpl<PrismContainer<C extends Containerable>>
-
cloneWithNewDefinition
@NotNull public @NotNull PrismContainerDefinition<C> cloneWithNewDefinition(QName newItemName, ItemDefinition<?> newDefinition) Description copied from interface:PrismContainerDefinition
TODO- Specified by:
cloneWithNewDefinition
in interfacePrismContainerDefinition<C extends Containerable>
-
replaceDefinition
Description copied from interface:PrismContainerDefinition
TODO- Specified by:
replaceDefinition
in interfacePrismContainerDefinition<C extends Containerable>
-
createPropertyDefinition
Creates new instance of property definition and adds it to the container.This is the preferred method of creating a new definition.
- Specified by:
createPropertyDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
- Parameters:
name
- name of the property (element name)typeName
- XSD type of the property- Returns:
- created property definition
-
createPropertyDefinition
public PrismPropertyDefinition<?> createPropertyDefinition(QName name, QName typeName, int minOccurs, int maxOccurs) Creates new instance of property definition and adds it to the container.This is the preferred method of creating a new definition.
- Specified by:
createPropertyDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
- Parameters:
name
- name of the property (element name)typeName
- XSD type of the propertyminOccurs
- minimal number of occurrencesmaxOccurs
- maximal number of occurrences (-1 means unbounded)- Returns:
- created property definition
-
createPropertyDefinition
-
createPropertyDefinition
Creates new instance of property definition and adds it to the container.This is the preferred method of creating a new definition.
- Specified by:
createPropertyDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
- Parameters:
localName
- name of the property (element name) relative to the schema namespacetypeName
- XSD type of the property- Returns:
- created property definition
-
createPropertyDefinition
Creates new instance of property definition and adds it to the container.This is the preferred method of creating a new definition.
- Parameters:
localName
- name of the property (element name) relative to the schema namespacelocalTypeName
- XSD type of the property- Returns:
- created property definition
-
createPropertyDefinition
public PrismPropertyDefinition<?> createPropertyDefinition(String localName, String localTypeName, int minOccurs, int maxOccurs) Creates new instance of property definition and adds it to the container.This is the preferred method of creating a new definition.
- Parameters:
localName
- name of the property (element name) relative to the schema namespacelocalTypeName
- XSD type of the propertyminOccurs
- minimal number of occurrencesmaxOccurs
- maximal number of occurrences (-1 means unbounded)- Returns:
- created property definition
-
createContainerDefinition
-
createContainerDefinition
public PrismContainerDefinition<?> createContainerDefinition(QName name, QName typeName, int minOccurs, int maxOccurs) - Specified by:
createContainerDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
-
createContainerDefinition
public PrismContainerDefinition<?> createContainerDefinition(@NotNull @NotNull QName name, @NotNull @NotNull ComplexTypeDefinition ctd, int minOccurs, int maxOccurs) - Specified by:
createContainerDefinition
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
-
canRepresent
Description copied from interface:PrismContainerDefinition
TODO- Specified by:
canRepresent
in interfacePrismContainerDefinition<C extends Containerable>
-
createValue
Description copied from interface:PrismContainerDefinition
TODO- Specified by:
createValue
in interfacePrismContainerDefinition<C extends Containerable>
-
getDiagrams
- Specified by:
getDiagrams
in interfacePrismPresentationDefinition
- Overrides:
getDiagrams
in classDefinitionImpl
-
debugDump
- Specified by:
debugDump
in interfaceDebugDumpable
- Overrides:
debugDump
in classDefinitionImpl
-
debugDump
- Specified by:
debugDump
in interfaceDefinition
-
isEmpty
public boolean isEmpty()Description copied from interface:PrismContainerDefinition
TODO- Specified by:
isEmpty
in interfacePrismContainerDefinition<C extends Containerable>
-
getDebugDumpClassName
Return a human readable name of this class suitable for logs.- Specified by:
getDebugDumpClassName
in classDefinitionImpl
-
getDocClassName
Description copied from class:DefinitionImpl
Returns human-readable name of this class suitable for documentation. (e.g. "property")- Specified by:
getDocClassName
in classDefinitionImpl
-
mutator
Description copied from interface:Definition
Returns an interface to mutate this definition.- Specified by:
mutator
in interfaceDefinition
- Specified by:
mutator
in interfaceItemDefinition<C extends Containerable>
- Specified by:
mutator
in interfacePrismContainerDefinition<C extends Containerable>
-
setAlwaysUseForEquals
Description copied from interface:PrismContainerDefinition.PrismContainerDefinitionMutator
Experimental: Use only with care, this overrides behavior of listed operational=true items in equivalence strategies for containers.- Specified by:
setAlwaysUseForEquals
in interfacePrismContainerDefinition.PrismContainerDefinitionMutator<C extends Containerable>
-
getAlwaysUseForEquals
Description copied from interface:PrismContainerDefinition
Returns list of items which should be always used for equals, even if they are operational, and equivalence strategy does not consider operational data.- Specified by:
getAlwaysUseForEquals
in interfacePrismContainerDefinition<C extends Containerable>
-
performFreeze
public void performFreeze()- Overrides:
performFreeze
in classSchemaRegistryStateAware
-
getSchemaContextDefinition
- Specified by:
getSchemaContextDefinition
in interfaceDefinition
- Overrides:
getSchemaContextDefinition
in classDefinitionImpl
-
getNaturalKeyConstituents
- Specified by:
getNaturalKeyConstituents
in interfaceDefinition
- Overrides:
getNaturalKeyConstituents
in classDefinitionImpl
-