Package com.evolveum.midpoint.prism
Interface MutableComplexTypeDefinition
-
- All Superinterfaces:
Cloneable
,ComplexTypeDefinition
,DebugDumpable
,Definition
,Freezable
,LocalItemDefinitionStore
,MutableDefinition
,MutableTypeDefinition
,PrismContextSensitive
,Revivable
,Serializable
,SmartVisitable<Definition>
,TypeDefinition
,Visitable<Definition>
- All Known Subinterfaces:
MutableResourceObjectClassDefinition
- All Known Implementing Classes:
ComplexTypeDefinitionImpl
,ResourceObjectClassDefinitionImpl
,TransformableComplexTypeDefinition
,TransformableComplexTypeDefinition.TrCompositeObjectDefinition
,TransformableComplexTypeDefinition.TrResourceObjectClassDefinition
,TransformableComplexTypeDefinition.TrResourceObjectDefinition
,TransformableComplexTypeDefinition.TrResourceObjectTypeDefinition
public interface MutableComplexTypeDefinition extends ComplexTypeDefinition, MutableTypeDefinition
An interface to mutate the definition of a complex type. TODO document the interface (e.g. what shouldadd(ItemDefinition)
method do in the case of duplicate definitions, etc)
-
-
Field Summary
-
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description void
add(ItemDefinition<?> definition)
void
addSubstitution(ItemDefinition<?> itemDef, ItemDefinition<?> maybeSubst)
@NotNull ComplexTypeDefinition
clone()
Does a shallow clone of this definition (i.e.MutablePrismPropertyDefinition<?>
createPropertyDefinition(String name, QName typeName)
MutablePrismPropertyDefinition<?>
createPropertyDefinition(QName name, QName typeName)
void
delete(QName itemName)
void
replaceDefinition(@NotNull QName itemName, ItemDefinition<?> newDefinition)
Replaces a definition for an item with given name.void
setAbstract(boolean value)
default void
setAttributeDefinitions(List<PrismPropertyDefinition<?>> definitions)
void
setCompileTimeClass(Class<?> compileTimeClass)
void
setContainerMarker(boolean value)
void
setDefaultNamespace(String namespace)
void
setExtensionForType(QName type)
void
setIgnoredNamespaces(@NotNull List<String> ignoredNamespaces)
void
setListMarker(boolean value)
void
setObjectMarker(boolean value)
void
setReferenceMarker(boolean value)
default void
setStrictAnyMarker(boolean marker)
void
setSuperType(QName superType)
void
setXsdAnyMarker(boolean value)
-
Methods inherited from interface com.evolveum.midpoint.prism.ComplexTypeDefinition
deepClone, getDefaultNamespace, getDefinitions, getExtensionForType, getIgnoredNamespaces, getXmlAttributeDefinitions, hasOperationalOnlyItems, hasSubstitutions, hasSubstitutions, isContainerMarker, isEmpty, isItemDefinitionRemoved, isListMarker, isObjectMarker, isReferenceMarker, isStrictAnyMarker, isXsdAnyMarker, itemOrSubstitution, merge, substitution, toMutable, trimTo
-
Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDump, debugDumpLazily, debugDumpLazily
-
Methods inherited from interface com.evolveum.midpoint.prism.Definition
debugDump, getAnnotation, getAnnotations, getDeprecatedSince, getDiagrams, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMutabilityFlag, getPlannedRemoval, getProcessing, getSchemaMigrations, getSchemaRegistry, getTypeClass, 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.LocalItemDefinitionStore
containsItemDefinition, findContainerDefinition, findItemDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinition, findPropertyDefinition, findReferenceDefinition
-
Methods inherited from interface com.evolveum.midpoint.prism.MutableDefinition
addDiagram, addSchemaMigration, setDeprecated, setDisplayName, setDisplayOrder, setDocumentation, setEmphasized, setExperimental, setHelp, setProcessing, setRuntimeSchema, setTypeName
-
Methods inherited from interface com.evolveum.midpoint.prism.MutableTypeDefinition
setInstantiationOrder
-
Methods inherited from interface com.evolveum.midpoint.prism.PrismContextSensitive
getPrismContext
-
Methods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
accept
-
Methods inherited from interface com.evolveum.midpoint.prism.TypeDefinition
canRepresent, getCompileTimeClass, getInstantiationOrder, getStaticSubTypes, getSuperType, isAssignableFrom
-
-
-
-
Method Detail
-
add
void add(ItemDefinition<?> definition)
-
delete
void delete(QName itemName)
-
createPropertyDefinition
MutablePrismPropertyDefinition<?> createPropertyDefinition(QName name, QName typeName)
-
createPropertyDefinition
MutablePrismPropertyDefinition<?> createPropertyDefinition(String name, QName typeName)
-
clone
@NotNull @NotNull ComplexTypeDefinition clone()
Description copied from interface:ComplexTypeDefinition
Does a shallow clone of this definition (i.e. item definitions themselves are NOT cloned).- Specified by:
clone
in interfaceComplexTypeDefinition
- Specified by:
clone
in interfaceDefinition
-
setExtensionForType
void setExtensionForType(QName type)
-
setAbstract
void setAbstract(boolean value)
-
setSuperType
void setSuperType(QName superType)
-
setObjectMarker
void setObjectMarker(boolean value)
-
setContainerMarker
void setContainerMarker(boolean value)
-
setReferenceMarker
void setReferenceMarker(boolean value)
-
setDefaultNamespace
void setDefaultNamespace(String namespace)
-
setXsdAnyMarker
void setXsdAnyMarker(boolean value)
-
setListMarker
void setListMarker(boolean value)
-
setCompileTimeClass
void setCompileTimeClass(Class<?> compileTimeClass)
-
replaceDefinition
void replaceDefinition(@NotNull @NotNull QName itemName, ItemDefinition<?> newDefinition)
Replaces a definition for an item with given name. TODO specify the behavior more precisely
-
addSubstitution
@Experimental void addSubstitution(ItemDefinition<?> itemDef, ItemDefinition<?> maybeSubst)
-
setAttributeDefinitions
@Experimental default void setAttributeDefinitions(List<PrismPropertyDefinition<?>> definitions)
-
setStrictAnyMarker
default void setStrictAnyMarker(boolean marker)
-
-