Package com.evolveum.midpoint.prism.impl
Class PrismObjectDefinitionImpl<O extends Objectable>
- java.lang.Object
 - 
- com.evolveum.midpoint.prism.AbstractFreezable
 - 
- com.evolveum.midpoint.prism.impl.DefinitionImpl
 - 
- com.evolveum.midpoint.prism.impl.ItemDefinitionImpl<PrismContainer<C>>
 - 
- com.evolveum.midpoint.prism.impl.PrismContainerDefinitionImpl<O>
 - 
- com.evolveum.midpoint.prism.impl.PrismObjectDefinitionImpl<O>
 
 
 
 
 
 
- 
- All Implemented Interfaces:
 Definition,Freezable,ItemDefinition<PrismContainer<O>>,ItemDefinitionTestAccess,LocalItemDefinitionStore,MutableDefinition,MutableItemDefinition<PrismContainer<O>>,MutablePrismContainerDefinition<O>,MutablePrismObjectDefinition<O>,PrismContainerDefinition<O>,PrismContextSensitive,PrismItemAccessDefinition,PrismObjectDefinition<O>,Revivable,SmartVisitable<Definition>,Visitable<Definition>,DebugDumpable,Serializable,Cloneable
public class PrismObjectDefinitionImpl<O extends Objectable> extends PrismContainerDefinitionImpl<O> implements MutablePrismObjectDefinition<O>
MidPoint Object Definition. Objects are storable entities in midPoint. This is mostly just a marker class to identify object boundaries in schema. This class represents schema definition for objects. SeeDefinitionfor more details. "Instance" class of this class is MidPointObject, not Object - to avoid confusion with java.lang.Object.- Author:
 - Radovan Semancik
 - See Also:
 - Serialized Form
 
 
- 
- 
Nested Class Summary
- 
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismItemAccessDefinition
PrismItemAccessDefinition.Mutable 
 - 
 
- 
Field Summary
- 
Fields inherited from class com.evolveum.midpoint.prism.impl.PrismContainerDefinitionImpl
compileTimeClass, complexTypeDefinition 
- 
Fields inherited from class com.evolveum.midpoint.prism.impl.ItemDefinitionImpl
heterogeneousListItem, itemName, substitutionHead 
- 
Fields inherited from class com.evolveum.midpoint.prism.impl.DefinitionImpl
deprecated, deprecatedSince, displayName, displayOrder, documentation, elaborate, emphasized, experimental, help, isAbstract, isRuntimeSchema, plannedRemoval, processing, typeName 
- 
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING 
 - 
 
- 
Constructor Summary
Constructors Constructor Description PrismObjectDefinitionImpl(QName elementName, ComplexTypeDefinition complexTypeDefinition, Class<O> compileTimeClass) 
- 
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description @NotNull PrismObjectDefinitionImpl<O>clone()Shallow clone@NotNull PrismObjectDefinition<O>cloneWithReplacedDefinition(QName itemName, ItemDefinition<?> newDefinition)TODOPrismObjectValue<O>createValue()TODOPrismObjectDefinition<O>deepClone(@NotNull DeepCloneOperation operation)Make a deep clone, cloning all the sub-items and definitions.StringgetDebugDumpClassName()Return a human readable name of this class suitable for logs.StringgetDocClassName()Returns human-readable name of this class suitable for documentation.PrismContainerDefinition<?>getExtensionDefinition()@NotNull PrismObject<O>instantiate()Create an item instance.@NotNull PrismObject<O>instantiate(QName name)Create an item instance.MutablePrismObjectDefinition<O>toMutable()Returns an interface to mutate this definition.- 
Methods inherited from class com.evolveum.midpoint.prism.impl.PrismContainerDefinitionImpl
accept, canBeDefinitionOf, canRepresent, checkMutable, copyDefinitionDataFrom, createContainerDefinition, createContainerDefinition, createContainerDefinition, createEmptyDelta, createPropertyDefinition, createPropertyDefinition, createPropertyDefinition, createPropertyDefinition, createPropertyDefinition, createPropertyDefinition, debugDump, debugDump, findItemDefinition, getAlwaysUseForEquals, getCompileTimeClass, getComplexTypeDefinition, getDefinitions, getDiagrams, getPropertyDefinitions, getSchemaNamespace, getTypeClass, isAbstract, isEmpty, performFreeze, replaceDefinition, revive, setAlwaysUseForEquals, setCompileTimeClass, setComplexTypeDefinition 
- 
Methods inherited from class com.evolveum.midpoint.prism.impl.ItemDefinitionImpl
adoptElementDefinitionFrom, canAdd, canBeDefinitionOf, canModify, canRead, copyDefinitionDataFrom, debugDumpShortToString, debugFlags, debugMultiplicity, equals, extendToString, getItemName, getMaxOccurs, getMinOccurs, getSubstitutionHead, getValueEnumerationRef, hashCode, isDynamic, isHeterogeneousListItem, isIndexOnly, isInherited, isOperational, isValidFor, replaceName, setCanAdd, setCanModify, setCanRead, setDynamic, setHeterogeneousListItem, setIndexOnly, setInherited, setItemName, setMaxOccurs, setMinOccurs, setOperational, setReadOnly, setSubstitutionHead, setValueEnumerationRef, toString, useSerializationProxy, writeReplace 
- 
Methods inherited from class com.evolveum.midpoint.prism.impl.DefinitionImpl
accept, addDiagram, addSchemaMigration, checkMutableOnExposing, copyDefinitionDataFrom, extendDumpHeader, getAnnotation, getAnnotations, getDeprecatedSince, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getPlannedRemoval, getPrismContext, getProcessing, getSchemaMigrations, getTypeName, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRuntimeSchema, setAbstract, setAnnotation, setDeprecated, setDeprecatedSince, setDisplayName, setDisplayOrder, setDocumentation, setElaborate, setEmphasized, setExperimental, setHelp, setPlannedRemoval, setProcessing, setRuntimeSchema, setTypeName 
- 
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, 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, 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, findItemDefinition, getItemName, getMaxOccurs, getMinOccurs, getSubstitutionHead, getValueEnumerationRef, isDynamic, isHeterogeneousListItem, isIndexOnly, isInherited, isMandatory, isMultiValue, isOperational, isOptional, isSingleValue, isValidFor 
- 
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.MutableItemDefinition
setCanAdd, setCanModify, setCanRead, setDeprecatedSince, setDynamic, setElaborate, setHeterogeneousListItem, setIndexOnly, setInherited, setItemName, setMaxOccurs, setMinOccurs, setOperational, setPlannedRemoval, setReadOnly, setSubstitutionHead, setValueEnumerationRef 
- 
Methods inherited from interface com.evolveum.midpoint.prism.MutablePrismContainerDefinition
createContainerDefinition, createContainerDefinition, createPropertyDefinition, createPropertyDefinition, createPropertyDefinition, setAlwaysUseForEquals, setCompileTimeClass, setComplexTypeDefinition 
- 
Methods inherited from interface com.evolveum.midpoint.prism.PrismContainerDefinition
canRepresent, createEmptyDelta, getAlwaysUseForEquals, getCompileTimeClass, getComplexTypeDefinition, getDefinitions, getItemNames, getPropertyDefinitions, getTypeClass, isAlwaysUseForEquals, isCompletelyDefined, isEmpty, replaceDefinition, structuredType 
- 
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 
 - 
 
 - 
 
- 
- 
Constructor Detail
- 
PrismObjectDefinitionImpl
public PrismObjectDefinitionImpl(QName elementName, ComplexTypeDefinition complexTypeDefinition, Class<O> compileTimeClass)
 
 - 
 
- 
Method Detail
- 
instantiate
@NotNull public @NotNull PrismObject<O> instantiate() throws SchemaException
Description copied from interface:ItemDefinitionCreate 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:
 instantiatein interfaceItemDefinition<O extends Objectable>- Specified by:
 instantiatein interfacePrismObjectDefinition<O extends Objectable>- Overrides:
 instantiatein classPrismContainerDefinitionImpl<O extends Objectable>- Throws:
 SchemaException
 
- 
instantiate
@NotNull public @NotNull PrismObject<O> instantiate(QName name) throws SchemaException
Description copied from interface:ItemDefinitionCreate an item instance. Definition name will use provided name. for the instance. The instance will otherwise be empty.- Specified by:
 instantiatein interfaceItemDefinition<O extends Objectable>- Specified by:
 instantiatein interfacePrismObjectDefinition<O extends Objectable>- Overrides:
 instantiatein classPrismContainerDefinitionImpl<O extends Objectable>- Throws:
 SchemaException
 
- 
clone
@NotNull public @NotNull PrismObjectDefinitionImpl<O> clone()
Description copied from class:PrismContainerDefinitionImplShallow clone- Specified by:
 clonein interfaceDefinition- Specified by:
 clonein interfaceItemDefinition<O extends Objectable>- Specified by:
 clonein interfacePrismContainerDefinition<O extends Objectable>- Specified by:
 clonein interfacePrismObjectDefinition<O extends Objectable>- Overrides:
 clonein classPrismContainerDefinitionImpl<O extends Objectable>
 
- 
deepClone
public PrismObjectDefinition<O> deepClone(@NotNull @NotNull DeepCloneOperation operation)
Description copied from class:ItemDefinitionImplMake a deep clone, cloning all the sub-items and definitions.- Specified by:
 deepClonein interfaceItemDefinition<O extends Objectable>- Specified by:
 deepClonein interfacePrismObjectDefinition<O extends Objectable>- Overrides:
 deepClonein classPrismContainerDefinitionImpl<O extends Objectable>
 
- 
cloneWithReplacedDefinition
@NotNull public @NotNull PrismObjectDefinition<O> cloneWithReplacedDefinition(QName itemName, ItemDefinition<?> newDefinition)
Description copied from interface:PrismContainerDefinitionTODO- Specified by:
 cloneWithReplacedDefinitionin interfacePrismContainerDefinition<O extends Objectable>- Specified by:
 cloneWithReplacedDefinitionin interfacePrismObjectDefinition<O extends Objectable>- Overrides:
 cloneWithReplacedDefinitionin classPrismContainerDefinitionImpl<O extends Objectable>
 
- 
getExtensionDefinition
public PrismContainerDefinition<?> getExtensionDefinition()
- Specified by:
 getExtensionDefinitionin interfacePrismObjectDefinition<O extends Objectable>
 
- 
createValue
public PrismObjectValue<O> createValue()
Description copied from interface:PrismContainerDefinitionTODO- Specified by:
 createValuein interfacePrismContainerDefinition<O extends Objectable>- Specified by:
 createValuein interfacePrismObjectDefinition<O extends Objectable>- Overrides:
 createValuein classPrismContainerDefinitionImpl<O extends Objectable>
 
- 
getDebugDumpClassName
public String getDebugDumpClassName()
Description copied from class:PrismContainerDefinitionImplReturn a human readable name of this class suitable for logs.- Overrides:
 getDebugDumpClassNamein classPrismContainerDefinitionImpl<O extends Objectable>
 
- 
getDocClassName
public String getDocClassName()
Description copied from class:DefinitionImplReturns human-readable name of this class suitable for documentation. (e.g. "property")- Overrides:
 getDocClassNamein classPrismContainerDefinitionImpl<O extends Objectable>
 
- 
toMutable
public MutablePrismObjectDefinition<O> toMutable()
Description copied from interface:DefinitionReturns an interface to mutate this definition.- Specified by:
 toMutablein interfaceDefinition- Specified by:
 toMutablein interfaceItemDefinition<O extends Objectable>- Specified by:
 toMutablein interfacePrismContainerDefinition<O extends Objectable>- Specified by:
 toMutablein interfacePrismObjectDefinition<O extends Objectable>- Overrides:
 toMutablein classPrismContainerDefinitionImpl<O extends Objectable>
 
 - 
 
 -