Class TransformableComplexTypeDefinition
java.lang.Object
com.evolveum.midpoint.model.impl.schema.transform.TransformableDefinition
com.evolveum.midpoint.model.impl.schema.transform.TransformableComplexTypeDefinition
- All Implemented Interfaces:
ComplexTypeDefinition,Definition,ComplexTypeDefinitionDelegator,DefinitionDelegator,TypeDefinitionDelegator,Freezable,LocalItemDefinitionStore,MutableComplexTypeDefinition,MutableDefinition,MutableTypeDefinition,PrismContextSensitive,Revivable,SmartVisitable<Definition>,TypeDefinition,Visitable<Definition>,DebugDumpable,Serializable,Cloneable
- Direct Known Subclasses:
TransformableComplexTypeDefinition.TrResourceObjectDefinition
public class TransformableComplexTypeDefinition
extends TransformableDefinition
implements ComplexTypeDefinitionDelegator
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic classstatic classstatic classstatic class -
Field Summary
FieldsFields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondefault voidadd(ItemDefinition<?> definition) default voidaddDiagram(ItemDiagramSpecification diagram) default voidaddSchemaMigration(SchemaMigration schemaMigration) default voidaddSubstitution(ItemDefinition<?> itemDef, ItemDefinition<?> maybeSubst) @NotNull ComplexTypeDefinitionclone()Does a shallow clone of this definition (i.e. item definitions themselves are NOT cloned).copy()default MutablePrismPropertyDefinition<?>createPropertyDefinition(String name, QName typeName) default MutablePrismPropertyDefinition<?>createPropertyDefinition(QName name, QName typeName) @NotNull ComplexTypeDefinitiondeepClone(@NotNull DeepCloneOperation operation) Does a deep clone of this definition.delegate()void<ID extends ItemDefinition<?>>
IDfindItemDefinition(@NotNull ItemPath path) ReturnsItemDefinitioncorresponding to given path (rooted at this store).<ID extends ItemDefinition<?>>
IDfindItemDefinition(@NotNull ItemPath path, @NotNull Class<ID> clazz) Returns a definition of given type corresponding to given path (rooted at this store).<ID extends ItemDefinition<?>>
IDfindLocalItemDefinition(@NotNull QName name) Returns the localItemDefinitioncorresponding to given item name (in case-sensitive manner).<ID extends ItemDefinition<?>>
IDfindLocalItemDefinition(@NotNull QName name, @NotNull Class<ID> clazz, boolean caseInsensitive) Returns the local item definition corresponding to given item name (optionally case-insensitive) and definition class.<ID extends ItemDefinition>
IDfindNamedItemDefinition(@NotNull QName firstName, @NotNull ItemPath rest, @NotNull Class<ID> clazz) voidfreeze()from(ComplexTypeDefinition complexTypeDefinition) @NotNull List<? extends ItemDefinition<?>>Returns definitions for all inner items.booleanisEmpty()Returns true if there are no item definitions.booleanbooleanisItemDefinitionRemoved(QName itemName) This allows to distinguish between missing and explicitly removed definitions.itemOrSubstitution(QName name) voidreplaceDefinition(@NotNull QName name, ItemDefinition definition) Currently used only to replace Refined* with LayerRefined*voidrevive(PrismContext prismContext) TODO: Is revive necessary if prism context is static?default voidsetAbstract(boolean value) default voidsetCompileTimeClass(Class<?> compileTimeClass) default voidsetContainerMarker(boolean value) default voidsetDefaultNamespace(String namespace) default voidsetDeprecated(boolean deprecated) default voidsetDisplayName(String displayName) default voidsetDisplayOrder(Integer displayOrder) default voidsetDocumentation(String value) default voidsetEmphasized(boolean emphasized) default voidsetExperimental(boolean experimental) default voidsetExtensionForType(QName type) default voiddefault voidsetIgnoredNamespaces(@NotNull List<String> ignoredNamespaces) default voidsetInstantiationOrder(Integer order) default voidsetListMarker(boolean value) default voidsetObjectMarker(boolean value) default voidsetProcessing(ItemProcessing processing) default voidsetReferenceMarker(boolean value) default voidsetRemoved(boolean removed) default voidsetRemovedSince(String removedSince) default voidsetRuntimeSchema(boolean value) default voidsetSuperType(QName superType) default voidsetTypeName(QName typeName) default voidsetXsdAnyMarker(boolean value) substitution(QName name) Returns an interface to mutate this definition.voidtrimTo(@NotNull Collection<ItemPath> paths) Trims the definition (and any definitions it refers to) to contain only items related to given paths.Methods inherited from class com.evolveum.midpoint.model.impl.schema.transform.TransformableDefinition
annotationsOverrides, getAnnotation, setAnnotationMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.prism.ComplexTypeDefinition
getXmlAttributeDefinitions, hasSubstitutions, isStrictAnyMarkerMethods inherited from interface com.evolveum.midpoint.prism.deleg.ComplexTypeDefinitionDelegator
findContainerDefinition, findReferenceDefinition, getDefaultNamespace, getDiagrams, getExtensionForType, getIgnoredNamespaces, hasOperationalOnlyItems, hasSubstitutions, isContainerMarker, isListMarker, isObjectMarker, isReferenceMarker, isXsdAnyMarker, mergeMethods inherited from interface com.evolveum.midpoint.prism.deleg.DefinitionDelegator
accept, accept, debugDump, debugDump, debugDump, debugDumpLazily, debugDumpLazily, getAnnotation, getAnnotations, getDeprecatedSince, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMutabilityFlag, getPlannedRemoval, getPrismContext, getProcessing, getRemovedSince, getSchemaMigrations, getSchemaRegistry, getTypeClass, getTypeName, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRemoved, isRuntimeSchema, setAnnotationMethods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutableMethods inherited from interface com.evolveum.midpoint.prism.LocalItemDefinitionStore
containsItemDefinition, findPropertyDefinitionMethods inherited from interface com.evolveum.midpoint.prism.MutableComplexTypeDefinition
setAttributeDefinitions, setStrictAnyMarkerMethods inherited from interface com.evolveum.midpoint.prism.TypeDefinition
isAssignableFromMethods inherited from interface com.evolveum.midpoint.prism.deleg.TypeDefinitionDelegator
canRepresent, getCompileTimeClass, getInstantiationOrder, getStaticSubTypes, getSuperType
-
Field Details
-
delegate
-
-
Constructor Details
-
TransformableComplexTypeDefinition
-
-
Method Details
-
delegate
- Specified by:
delegatein interfaceComplexTypeDefinitionDelegator- Specified by:
delegatein interfaceDefinitionDelegator- Specified by:
delegatein interfaceTypeDefinitionDelegator
-
from
-
findLocalItemDefinition
Description copied from interface:LocalItemDefinitionStoreReturns the localItemDefinitioncorresponding to given item name (in case-sensitive manner). Does not try to resolve items globally (in the case of "any" content). Note: some implementors provide optimized implementations of this method.- Specified by:
findLocalItemDefinitionin interfaceLocalItemDefinitionStore
-
findLocalItemDefinition
public <ID extends ItemDefinition<?>> ID findLocalItemDefinition(@NotNull @NotNull QName name, @NotNull @NotNull Class<ID> clazz, boolean caseInsensitive) Description copied from interface:LocalItemDefinitionStoreReturns the local item definition corresponding to given item name (optionally case-insensitive) and definition class. Does not try to resolve items globally (in the case of "any" content). BEWARE: In the case of ambiguities, returns any suitable definition. (This may change.)- Specified by:
findLocalItemDefinitionin interfaceLocalItemDefinitionStore
-
findItemDefinition
public <ID extends ItemDefinition<?>> ID findItemDefinition(@NotNull @NotNull ItemPath path, @NotNull @NotNull Class<ID> clazz) Description copied from interface:LocalItemDefinitionStoreReturns a definition of given type corresponding to given path (rooted at this store). Tries the global resolution in the case of "any" content.- Specified by:
findItemDefinitionin interfaceComplexTypeDefinitionDelegator- Specified by:
findItemDefinitionin interfaceLocalItemDefinitionStore
-
findItemDefinition
Description copied from interface:LocalItemDefinitionStoreReturnsItemDefinitioncorresponding to given path (rooted at this store). Tries the global resolution in the case of "any" content.- Specified by:
findItemDefinitionin interfaceComplexTypeDefinitionDelegator- Specified by:
findItemDefinitionin interfaceLocalItemDefinitionStore
-
findNamedItemDefinition
public <ID extends ItemDefinition> ID findNamedItemDefinition(@NotNull @NotNull QName firstName, @NotNull @NotNull ItemPath rest, @NotNull @NotNull Class<ID> clazz) -
getDefinitions
Description copied from interface:ComplexTypeDefinitionReturns definitions for all inner items. These are of typeItemDefinition. However, very often subtypes of this type are used, e.g. ResourceAttributeDefinition, RefinedAttributeDefinition, LayerRefinedAttributeDefinition, and so on. The returned structure is aListbecause the ordering is significant, e.g. for serialization purposes. The list is unmodifiable.- Specified by:
getDefinitionsin interfaceComplexTypeDefinition- Specified by:
getDefinitionsin interfaceComplexTypeDefinitionDelegator- Specified by:
getDefinitionsin interfaceLocalItemDefinitionStore
-
isEmpty
public boolean isEmpty()Description copied from interface:ComplexTypeDefinitionReturns true if there are no item definitions.- Specified by:
isEmptyin interfaceComplexTypeDefinition- Specified by:
isEmptyin interfaceComplexTypeDefinitionDelegator
-
substitution
- Specified by:
substitutionin interfaceComplexTypeDefinition- Specified by:
substitutionin interfaceComplexTypeDefinitionDelegator
-
itemOrSubstitution
- Specified by:
itemOrSubstitutionin interfaceComplexTypeDefinition- Specified by:
itemOrSubstitutionin interfaceComplexTypeDefinitionDelegator
-
revive
Description copied from interface:RevivableTODO: Is revive necessary if prism context is static? TODO document (if it's found to be necessary) -
clone
Description copied from interface:ComplexTypeDefinitionDoes a shallow clone of this definition (i.e. item definitions themselves are NOT cloned).- Specified by:
clonein interfaceComplexTypeDefinition- Specified by:
clonein interfaceDefinition- Specified by:
clonein interfaceMutableComplexTypeDefinition- Overrides:
clonein classTransformableDefinition
-
isImmutable
public boolean isImmutable()- Specified by:
isImmutablein interfaceFreezable
-
freeze
public void freeze() -
deepClone
@NotNull public @NotNull ComplexTypeDefinition deepClone(@NotNull @NotNull DeepCloneOperation operation) Description copied from interface:ComplexTypeDefinitionDoes a deep clone of this definition.- Specified by:
deepClonein interfaceComplexTypeDefinition
-
toMutable
Description copied from interface:DefinitionReturns an interface to mutate this definition.- Specified by:
toMutablein interfaceComplexTypeDefinition- Specified by:
toMutablein interfaceDefinition
-
isItemDefinitionRemoved
Description copied from interface:ComplexTypeDefinitionThis allows to distinguish between missing and explicitly removed definitions.- Specified by:
isItemDefinitionRemovedin interfaceComplexTypeDefinition
-
replaceDefinition
Currently used only to replace Refined* with LayerRefined*- Specified by:
replaceDefinitionin interfaceMutableComplexTypeDefinition
-
delete
- Specified by:
deletein interfaceMutableComplexTypeDefinition
-
copy
-
trimTo
Description copied from interface:ComplexTypeDefinitionTrims the definition (and any definitions it refers to) to contain only items related to given paths. USE WITH CARE. Be sure no shared definitions would be affected by this operation!- Specified by:
trimToin interfaceComplexTypeDefinition- Specified by:
trimToin interfaceComplexTypeDefinitionDelegator
-
setInstantiationOrder
- Specified by:
setInstantiationOrderin interfaceMutableTypeDefinition
-
setProcessing
- Specified by:
setProcessingin interfaceMutableDefinition
-
setDeprecated
default void setDeprecated(boolean deprecated) - Specified by:
setDeprecatedin interfaceMutableDefinition
-
setRemoved
default void setRemoved(boolean removed) - Specified by:
setRemovedin interfaceMutableDefinition
-
setRemovedSince
- Specified by:
setRemovedSincein interfaceMutableDefinition
-
setExperimental
default void setExperimental(boolean experimental) - Specified by:
setExperimentalin interfaceMutableDefinition
-
setEmphasized
default void setEmphasized(boolean emphasized) - Specified by:
setEmphasizedin interfaceMutableDefinition
-
setDisplayName
- Specified by:
setDisplayNamein interfaceMutableDefinition
-
setDisplayOrder
- Specified by:
setDisplayOrderin interfaceMutableDefinition
-
setHelp
- Specified by:
setHelpin interfaceMutableDefinition
-
setRuntimeSchema
default void setRuntimeSchema(boolean value) - Specified by:
setRuntimeSchemain interfaceMutableDefinition
-
setTypeName
- Specified by:
setTypeNamein interfaceMutableDefinition
-
setDocumentation
- Specified by:
setDocumentationin interfaceMutableDefinition
-
addSchemaMigration
- Specified by:
addSchemaMigrationin interfaceMutableDefinition
-
add
- Specified by:
addin interfaceMutableComplexTypeDefinition
-
createPropertyDefinition
- Specified by:
createPropertyDefinitionin interfaceMutableComplexTypeDefinition
-
createPropertyDefinition
- Specified by:
createPropertyDefinitionin interfaceMutableComplexTypeDefinition
-
setExtensionForType
- Specified by:
setExtensionForTypein interfaceMutableComplexTypeDefinition
-
setAbstract
default void setAbstract(boolean value) - Specified by:
setAbstractin interfaceMutableComplexTypeDefinition
-
setSuperType
- Specified by:
setSuperTypein interfaceMutableComplexTypeDefinition
-
setObjectMarker
default void setObjectMarker(boolean value) - Specified by:
setObjectMarkerin interfaceMutableComplexTypeDefinition
-
setContainerMarker
default void setContainerMarker(boolean value) - Specified by:
setContainerMarkerin interfaceMutableComplexTypeDefinition
-
setReferenceMarker
default void setReferenceMarker(boolean value) - Specified by:
setReferenceMarkerin interfaceMutableComplexTypeDefinition
-
setDefaultNamespace
- Specified by:
setDefaultNamespacein interfaceMutableComplexTypeDefinition
-
setIgnoredNamespaces
- Specified by:
setIgnoredNamespacesin interfaceMutableComplexTypeDefinition
-
setXsdAnyMarker
default void setXsdAnyMarker(boolean value) - Specified by:
setXsdAnyMarkerin interfaceMutableComplexTypeDefinition
-
setListMarker
default void setListMarker(boolean value) - Specified by:
setListMarkerin interfaceMutableComplexTypeDefinition
-
setCompileTimeClass
- Specified by:
setCompileTimeClassin interfaceMutableComplexTypeDefinition
-
addSubstitution
- Specified by:
addSubstitutionin interfaceMutableComplexTypeDefinition
-
addDiagram
- Specified by:
addDiagramin interfaceMutableDefinition
-