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:
ResourceObjectClassDefinitionImpl
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, hasSubstitutions, hasSubstitutions, isContainerMarker, isEmpty, 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, 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.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)
-
-