Package com.evolveum.midpoint.prism
Interface PrismContainerDefinition<C extends Containerable>
-
- All Superinterfaces:
Cloneable
,DebugDumpable
,Definition
,Freezable
,ItemDefinition<PrismContainer<C>>
,LocalDefinitionStore
,PrismContextSensitive
,PrismItemAccessDefinition
,Revivable
,Serializable
,SmartVisitable<Definition>
,Visitable<Definition>
- All Known Subinterfaces:
AttributeContainerDefinitionDelegator
,ContainerDefinitionDelegator<C>
,MutablePrismContainerDefinition<C>
,MutablePrismObjectDefinition<O>
,ObjectDefinitionDelegator<O>
,PartiallyMutableItemDefinition.Container<C>
,PrismObjectDefinition<O>
,ResourceAttributeContainerDefinition
- All Known Implementing Classes:
DummyPrismObjectDefinition
,PrismContainerDefinitionImpl
,PrismObjectDefinitionImpl
,ResourceAttributeContainerDefinitionImpl
,TransformableContainerDefinition
,TransformableContainerDefinition.AttributeContainer
,TransformableObjectDefinition
public interface PrismContainerDefinition<C extends Containerable> extends ItemDefinition<PrismContainer<C>>, LocalDefinitionStore
TODO
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
PrismItemAccessDefinition.Mutable
-
-
Field Summary
-
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
-
Method Summary
-
Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDump, debugDumpLazily, debugDumpLazily
-
Methods inherited from interface com.evolveum.midpoint.prism.Definition
debugDump, getAnnotation, getDeprecatedSince, getDiagrams, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMutabilityFlag, getPlannedRemoval, getProcessing, getSchemaMigrations, getSchemaRegistry, getTypeClassIfKnown, getTypeName, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRuntimeSchema, setAnnotation
-
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutable
-
Methods inherited from interface com.evolveum.midpoint.prism.ItemDefinition
adoptElementDefinitionFrom, canBeDefinitionOf, canBeDefinitionOf, debugDumpShortToString, deepClone, deepClone, findItemDefinition, getItemName, getMaxOccurs, getMinOccurs, getNamespace, getSubstitutionHead, getValueEnumerationRef, instantiate, instantiate, isDynamic, isHeterogeneousListItem, isIndexOnly, isInherited, isMandatory, isMultiValue, isOperational, isOptional, isSingleValue, isValidFor, isValidFor, revive
-
Methods inherited from interface com.evolveum.midpoint.prism.LocalDefinitionStore
findContainerDefinition, findContainerDefinition, findItemDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinition, findNamedItemDefinition, findPropertyDefinition, findReferenceDefinition, findReferenceDefinition
-
Methods inherited from interface com.evolveum.midpoint.prism.PrismContextSensitive
getPrismContext
-
Methods inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
canAdd, canModify, canRead
-
Methods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
accept
-
-
-
-
Method Detail
-
getComplexTypeDefinition
ComplexTypeDefinition getComplexTypeDefinition()
-
getDefaultNamespace
String getDefaultNamespace()
-
getDefinitions
List<? extends ItemDefinition> getDefinitions()
-
getItemNames
default Collection<ItemName> getItemNames()
Returns names of items that are defined within this container definition. They do NOT include items that can be put into instantiated container by means of "xsd:any" mechanism.
-
isCompletelyDefined
boolean isCompletelyDefined()
Returns true if the instantiated container can contain only items that are explicitly defined here.
-
getPropertyDefinitions
List<PrismPropertyDefinition> getPropertyDefinitions()
-
createEmptyDelta
ContainerDelta<C> createEmptyDelta(ItemPath path)
- Specified by:
createEmptyDelta
in interfaceItemDefinition<C extends Containerable>
-
clone
@NotNull @NotNull PrismContainerDefinition<C> clone()
- Specified by:
clone
in interfaceDefinition
- Specified by:
clone
in interfaceItemDefinition<C extends Containerable>
-
cloneWithReplacedDefinition
PrismContainerDefinition<C> cloneWithReplacedDefinition(QName itemName, ItemDefinition newDefinition)
-
replaceDefinition
void replaceDefinition(QName itemName, ItemDefinition newDefinition)
-
createValue
PrismContainerValue<C> createValue()
-
isEmpty
boolean isEmpty()
-
canRepresent
boolean canRepresent(@NotNull @NotNull QName type)
-
toMutable
MutablePrismContainerDefinition<C> toMutable()
- Specified by:
toMutable
in interfaceDefinition
- Specified by:
toMutable
in interfaceItemDefinition<C extends Containerable>
-
getTypeClass
Class<C> getTypeClass()
Description copied from interface:Definition
Returns a compile-time class that is used to represent items. E.g. returns String, Integer, sublcasses of Objectable and Containerable and so on.- Specified by:
getTypeClass
in interfaceDefinition
-
structuredType
default Optional<ComplexTypeDefinition> structuredType()
Description copied from interface:ItemDefinition
Returns complex type definition of item, if underlying value is possible structured. NOTE: This seems weird, since properties and references are simple values, but actually object reference is serialized as structured value and some of properties are also.- Specified by:
structuredType
in interfaceItemDefinition<C extends Containerable>
- Returns:
-
-