Class RefinedObjectClassDefinitionImpl
- java.lang.Object
- 
- com.evolveum.midpoint.common.refinery.RefinedObjectClassDefinitionImpl
 
- 
- All Implemented Interfaces:
- RefinedObjectClassDefinition,- ComplexTypeDefinition,- Definition,- Freezable,- LocalDefinitionStore,- PrismContextSensitive,- Revivable,- SmartVisitable<Definition>,- TypeDefinition,- Visitable<Definition>,- ObjectClassComplexTypeDefinition,- DebugDumpable,- Serializable,- Cloneable
 
 public final class RefinedObjectClassDefinitionImpl extends Object implements RefinedObjectClassDefinition - Author:
- semancik
- See Also:
- Serialized Form
 
- 
- 
Field Summary- 
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpableINDENT_STRING
 
- 
 - 
Method SummaryAll Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description voidaccept(Visitor<Definition> visitor)booleanaccept(Visitor<Definition> visitor, SmartVisitation<Definition> visitation)booleancanRepresent(QName typeName)@NotNull RefinedObjectClassDefinitionImplclone()Does a shallow clone of this definition (i.e.PrismObject<ShadowType>createBlankShadow(RefinedObjectClassDefinition definition)ObjectQuerycreateShadowSearchQuery(String resourceOid)StringdebugDump(int indent)static StringdebugDump(int indent, LayerType layer, RefinedObjectClassDefinition _this)@NotNull RefinedObjectClassDefinitiondeepClone(Map<QName,ComplexTypeDefinition> ctdMap, Map<QName,ComplexTypeDefinition> onThisPath, Consumer<ItemDefinition> postCloneAction)Does a deep clone of this definition.booleanequals(Object obj)RefinedAssociationDefinitionfindAssociationDefinition(QName name)<X> RefinedAttributeDefinition<X>findAttributeDefinition(@NotNull QName name)Finds a attribute definition by looking at the property name.<ID extends ItemDefinition>
 IDfindItemDefinition(@NotNull ItemPath path, @NotNull Class<ID> clazz)<ID extends ItemDefinition>
 IDfindLocalItemDefinition(@NotNull QName name, @NotNull Class<ID> clazz, boolean caseInsensitive)<ID extends ItemDefinition>
 IDfindNamedItemDefinition(@NotNull QName firstName, @NotNull ItemPath rest, @NotNull Class<ID> clazz)LayerRefinedObjectClassDefinitionforLayer(@NotNull LayerType layerType)Creates a derived version of this ROCD for a given layer.voidfreeze()ResourceBidirectionalMappingTypegetActivationBidirectionalMappingType(QName propertyName)AttributeFetchStrategyTypegetActivationFetchStrategy(QName propertyName)ResourceActivationDefinitionTypegetActivationSchemaHandling()<A> AgetAnnotation(QName qname)Returns generic definition annotation.@NotNull Collection<RefinedAssociationDefinition>getAssociationDefinitions()Returns definitions of all associations as an unmodifiable collection.Collection<RefinedAssociationDefinition>getAssociationDefinitions(ShadowKindType kind)@NotNull Collection<? extends RefinedAttributeDefinition<?>>getAttributeDefinitions()Returns definitions of all attributes as an unmodifiable collection.@NotNull Collection<RefinedObjectClassDefinition>getAuxiliaryObjectClassDefinitions()ResourceBidirectionalMappingAndDefinitionTypegetAuxiliaryObjectClassMappings()ResourceObjectReferenceTypegetBaseContext()CapabilitiesTypegetCapabilities()@Nullable Class<?>getCompileTimeClass()Returns compile-time class, if this type has any.StringgetDebugDumpClassName()Return a human readable name of this class suitable for logs.@Nullable StringgetDefaultNamespace()When resolving unqualified names for items contained in this CTD, what should be the default namespace to look into at first.@NotNull List<? extends ItemDefinition>getDefinitions()Returns definitions for all inner items.StringgetDeprecatedSince()StringgetDescription()<X> RefinedAttributeDefinition<X>getDescriptionAttribute()Returns the definition of description attribute of a resource object.StringgetDisplayName()Returns display name.<X> RefinedAttributeDefinition<X>getDisplayNameAttribute()Returns the definition of display name attribute.IntegergetDisplayOrder()Specifies an order in which the item should be displayed relative to other items at the same level.StringgetDocumentation()StringgetDocumentationPreview()Returns only a first sentence of documentation.<T extends CapabilityType>
 TgetEffectiveCapability(Class<T> capabilityClass, ResourceType resourceType)@Nullable QNamegetExtensionForType()If not null, indicates that this type defines the structure of 'extension' element of a given type.StringgetHelp()Returns help string.StringgetHumanReadableName()@NotNull List<String>getIgnoredNamespaces()When resolving unqualified names for items contained in this CTD, what namespace(s) should be ignored.IntegergetInstantiationOrder()StringgetIntent()TODO: THIS SHOULD NOT BE HEREShadowKindTypegetKind()TODO: THIS SHOULD NOT BE HEREResourceObjectMultiplicityTypegetMultiplicity()Collection<QName>getNamesOfAssociations()Collection<? extends QName>getNamesOfAssociationsWithInboundExpressions()Collection<? extends QName>getNamesOfAssociationsWithOutboundExpressions()Collection<? extends QName>getNamesOfAttributesWithInboundExpressions()Collection<? extends QName>getNamesOfAttributesWithOutboundExpressions()<X> RefinedAttributeDefinition<X>getNamingAttribute()TODOStringgetNativeObjectClass()Returns the native object class string for the resource object.ObjectClassComplexTypeDefinitiongetObjectClassDefinition()PrismObjectDefinition<ShadowType>getObjectDefinition()PagedSearchCapabilityTypegetPagedSearches(ResourceType resourceType)ResourcePasswordDefinitionTypegetPasswordDefinition()AttributeFetchStrategyTypegetPasswordFetchStrategy()List<MappingType>getPasswordInbound()List<MappingType>getPasswordOutbound()ObjectReferenceTypegetPasswordPolicy()Deprecated.StringgetPlannedRemoval()Version of data model in which the item is likely to be removed.@NotNull Collection<RefinedAttributeDefinition<?>>getPrimaryIdentifiers()Returns the definition of primary identifier attributes of a resource object.PrismContextgetPrismContext()ItemProcessinggetProcessing()ProjectionPolicyTypegetProjection()Collection<ResourceObjectPattern>getProtectedObjectPatterns()StringgetResourceOid()List<SchemaMigration>getSchemaMigrations()SearchHierarchyScopegetSearchHierarchyScope()@NotNull Collection<RefinedAttributeDefinition<?>>getSecondaryIdentifiers()Returns the definition of secondary identifier attributes of a resource object.ObjectReferenceTypegetSecurityPolicyRef()ResourceShadowDiscriminatorgetShadowDiscriminator()@NotNull Collection<TypeDefinition>getStaticSubTypes()Subtypes - but only these that are a part of the static schema.@Nullable QNamegetSuperType()Name of super type of this complex type definition.ClassgetTypeClass()Returns a compile-time class that is used to represent items.ClassgetTypeClassIfKnown()@NotNull QNamegetTypeName()Returns a name of the type for this definition.ResourceObjectVolatilityTypegetVolatility()booleanhasAuxiliaryObjectClass(QName expectedObjectClassName)inthashCode()ResourceAttributeContainerinstantiate(QName elementName)booleanisAbstract()booleanisAuxiliary()TODObooleanisContainerMarker()Flag indicating whether this type was marked as "container" in the original schema.booleanisDefault()booleanisDefaultInAKind()Indicates whether definition is should be used as default definition in ist kind.booleanisDeprecated()booleanisElaborate()Elaborate items are complicated data structure that may deviate from normal principles of the system.booleanisEmphasized()True for definitions that are more important than others and that should be emphasized during presentation.booleanisEmpty()Returns true if there are no item definitions.booleanisExperimental()Experimental functionality is not stable and it may be changed in any future release without any warning.booleanisIgnored()Item definition that has this flag set should be ignored by any processing.booleanisImmutable()booleanisListMarker()booleanisObjectCountingEnabled(ResourceType resourceType)booleanisObjectMarker()Flag indicating whether this type was marked as "object" in the original schema.booleanisPagedSearchEnabled(ResourceType resourceType)booleanisReferenceMarker()Flag indicating whether this type was marked as "objectReference" in the original schema.booleanisRuntimeSchema()This means that this particular definition (of an item or of a type) is part of the runtime schema, e.g.booleanisShared()Is this definition shared, i.e.booleanisXsdAnyMarker()True if the complex type definition contains xsd:any (directly or indirectly).booleanmatches(ShadowType shadowType)booleanmatchesWithoutIntent(ShadowType shadowType)voidmerge(ComplexTypeDefinition otherComplexTypeDef)Copies cloned definitions from the other type definition into this one.static RefinedObjectClassDefinitionparseFromSchema(ObjectClassComplexTypeDefinition objectClassDef, ResourceType resourceType, RefinedResourceSchema rSchema, PrismContext prismContext, String contextDescription)voidrevive(PrismContext prismContext)<A> voidsetAnnotation(QName qname, A value)voidsetIntent(String intent)voidsetKind(ShadowKindType kind)voidsetSearchHierarchyScope(SearchHierarchyScope searchHierarchyScope)MutableObjectClassComplexTypeDefinitiontoMutable()StringtoString()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 java.lang.Objectfinalize, getClass, notify, notifyAll, wait, wait, wait
 - 
Methods inherited from interface com.evolveum.midpoint.prism.ComplexTypeDefinitioncontainsItemDefinition
 - 
Methods inherited from interface com.evolveum.midpoint.util.DebugDumpabledebugDump, debugDumpLazily, debugDumpLazily
 - 
Methods inherited from interface com.evolveum.midpoint.prism.DefinitiondebugDump, getMutabilityFlag, getSchemaRegistry
 - 
Methods inherited from interface com.evolveum.midpoint.prism.FreezablecheckImmutable, checkMutable
 - 
Methods inherited from interface com.evolveum.midpoint.prism.LocalDefinitionStorefindContainerDefinition, findContainerDefinition, findItemDefinition, findLocalItemDefinition, findPropertyDefinition, findReferenceDefinition, findReferenceDefinition
 - 
Methods inherited from interface com.evolveum.midpoint.schema.processor.ObjectClassComplexTypeDefinitionfindAttributeDefinition, isPrimaryIdentifier, isSecondaryIdentifier, toResourceAttributeContainerDefinition, toResourceAttributeContainerDefinition
 - 
Methods inherited from interface com.evolveum.midpoint.common.refinery.RefinedObjectClassDefinitioncontainsAttributeDefinition, containsAttributeDefinition, createBlankShadow, findAttributeDefinition, getAllIdentifiers
 
- 
 
- 
- 
- 
Method Detail- 
getAttributeDefinitions@NotNull public @NotNull Collection<? extends RefinedAttributeDefinition<?>> getAttributeDefinitions() Description copied from interface:RefinedObjectClassDefinitionReturns definitions of all attributes as an unmodifiable collection. Note: content of this is exactly the same as for getDefinitions- Specified by:
- getAttributeDefinitionsin interface- ObjectClassComplexTypeDefinition
- Specified by:
- getAttributeDefinitionsin interface- RefinedObjectClassDefinition
 
 - 
getDefinitions@NotNull public @NotNull List<? extends ItemDefinition> getDefinitions() Description copied from interface:ComplexTypeDefinitionReturns definitions for all inner items. These are of type ItemDefinition. However, very often subtypes of this type are used, e.g. ResourceAttributeDefinition, RefinedAttributeDefinition, LayerRefinedAttributeDefinition, and so on. Although returned as a list, the order of definitions is insignificant. (TODO change to set?) The list is unmodifiable.- Specified by:
- getDefinitionsin interface- ComplexTypeDefinition
 
 - 
getNamesOfAttributesWithOutboundExpressionspublic Collection<? extends QName> getNamesOfAttributesWithOutboundExpressions() - Specified by:
- getNamesOfAttributesWithOutboundExpressionsin interface- RefinedObjectClassDefinition
 
 - 
getNamesOfAttributesWithInboundExpressionspublic Collection<? extends QName> getNamesOfAttributesWithInboundExpressions() - Specified by:
- getNamesOfAttributesWithInboundExpressionsin interface- RefinedObjectClassDefinition
 
 - 
findLocalItemDefinitionpublic <ID extends ItemDefinition> ID findLocalItemDefinition(@NotNull @NotNull QName name, @NotNull @NotNull Class<ID> clazz, boolean caseInsensitive) - Specified by:
- findLocalItemDefinitionin interface- LocalDefinitionStore
 
 - 
getPrimaryIdentifiers@NotNull public @NotNull Collection<RefinedAttributeDefinition<?>> getPrimaryIdentifiers() Description copied from interface:ObjectClassComplexTypeDefinitionReturns the definition of primary identifier attributes of a resource object. May return empty set if there are no identifier attributes. Must not return null. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
- getPrimaryIdentifiersin interface- ObjectClassComplexTypeDefinition
- Specified by:
- getPrimaryIdentifiersin interface- RefinedObjectClassDefinition
- Returns:
- definition of identifier attributes
 
 - 
getSecondaryIdentifiers@NotNull public @NotNull Collection<RefinedAttributeDefinition<?>> getSecondaryIdentifiers() Description copied from interface:ObjectClassComplexTypeDefinitionReturns the definition of secondary identifier attributes of a resource object. May return empty set if there are no secondary identifier attributes. Must not return null. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
- getSecondaryIdentifiersin interface- ObjectClassComplexTypeDefinition
- Specified by:
- getSecondaryIdentifiersin interface- RefinedObjectClassDefinition
- Returns:
- definition of secondary identifier attributes
 
 - 
getDescriptionAttributepublic <X> RefinedAttributeDefinition<X> getDescriptionAttribute() Description copied from interface:ObjectClassComplexTypeDefinitionReturns the definition of description attribute of a resource object. Returns null if there is no description attribute. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
- getDescriptionAttributein interface- ObjectClassComplexTypeDefinition
- Specified by:
- getDescriptionAttributein interface- RefinedObjectClassDefinition
 
 - 
getNamingAttributepublic <X> RefinedAttributeDefinition<X> getNamingAttribute() Description copied from interface:ObjectClassComplexTypeDefinitionTODO- Specified by:
- getNamingAttributein interface- ObjectClassComplexTypeDefinition
- Specified by:
- getNamingAttributein interface- RefinedObjectClassDefinition
 
 - 
getDisplayNameAttributepublic <X> RefinedAttributeDefinition<X> getDisplayNameAttribute() Description copied from interface:ObjectClassComplexTypeDefinitionReturns the definition of display name attribute. Display name attribute specifies which resource attribute should be used as title when displaying objects of a specific resource object class. It must point to an attribute of String type. If not present, primary identifier should be used instead (but this method does not handle this default behavior). Returns null if there is no display name attribute. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
- getDisplayNameAttributein interface- ObjectClassComplexTypeDefinition
- Specified by:
- getDisplayNameAttributein interface- RefinedObjectClassDefinition
 
 - 
getAssociationDefinitions@NotNull public @NotNull Collection<RefinedAssociationDefinition> getAssociationDefinitions() Description copied from interface:RefinedObjectClassDefinitionReturns definitions of all associations as an unmodifiable collection. Note: these items are _not_ included in getDefinitions. (BTW, RefinedAssociationDefinition is not a subtype of ItemDefinition, not even of Definition.)- Specified by:
- getAssociationDefinitionsin interface- RefinedObjectClassDefinition
 
 - 
getAssociationDefinitionspublic Collection<RefinedAssociationDefinition> getAssociationDefinitions(ShadowKindType kind) - Specified by:
- getAssociationDefinitionsin interface- RefinedObjectClassDefinition
 
 - 
findAssociationDefinitionpublic RefinedAssociationDefinition findAssociationDefinition(QName name) - Specified by:
- findAssociationDefinitionin interface- RefinedObjectClassDefinition
 
 - 
getNamesOfAssociationspublic Collection<QName> getNamesOfAssociations() - Specified by:
- getNamesOfAssociationsin interface- RefinedObjectClassDefinition
 
 - 
getNamesOfAssociationsWithOutboundExpressionspublic Collection<? extends QName> getNamesOfAssociationsWithOutboundExpressions() - Specified by:
- getNamesOfAssociationsWithOutboundExpressionsin interface- RefinedObjectClassDefinition
 
 - 
getNamesOfAssociationsWithInboundExpressionspublic Collection<? extends QName> getNamesOfAssociationsWithInboundExpressions() - Specified by:
- getNamesOfAssociationsWithInboundExpressionsin interface- RefinedObjectClassDefinition
 
 - 
getDisplayNamepublic String getDisplayName() Description copied from interface:DefinitionReturns display name. Specifies the printable name of the object class or attribute. It must contain a printable string. It may also contain a key to catalog file. Returns null if no display name is set. Corresponds to "displayName" XSD annotation.- Specified by:
- getDisplayNamein interface- Definition
- Returns:
- display name string or catalog key
 
 - 
getDescriptionpublic String getDescription() - Specified by:
- getDescriptionin interface- RefinedObjectClassDefinition
 
 - 
getObjectClassDefinitionpublic ObjectClassComplexTypeDefinition getObjectClassDefinition() - Specified by:
- getObjectClassDefinitionin interface- RefinedObjectClassDefinition
 
 - 
getResourceOidpublic String getResourceOid() - Specified by:
- getResourceOidin interface- RefinedObjectClassDefinition
 
 - 
isDefaultpublic boolean isDefault() - Specified by:
- isDefaultin interface- RefinedObjectClassDefinition
 
 - 
isDefaultInAKindpublic boolean isDefaultInAKind() Description copied from interface:ObjectClassComplexTypeDefinitionIndicates whether definition is should be used as default definition in ist kind. E.g. if used in an "account" kind it indicates default account definition. If true value is returned then the definition should be used as a default definition for the kind. This is a way how a resource connector may suggest applicable object classes (resource object definitions) for individual shadow kinds (e.g. accounts).- Specified by:
- isDefaultInAKindin interface- ObjectClassComplexTypeDefinition
- Returns:
- true if the definition should be used as account type.
 
 - 
getBaseContextpublic ResourceObjectReferenceType getBaseContext() - Specified by:
- getBaseContextin interface- RefinedObjectClassDefinition
 
 - 
getSearchHierarchyScopepublic SearchHierarchyScope getSearchHierarchyScope() - Specified by:
- getSearchHierarchyScopein interface- RefinedObjectClassDefinition
 
 - 
setSearchHierarchyScopepublic void setSearchHierarchyScope(SearchHierarchyScope searchHierarchyScope) 
 - 
getIntentpublic String getIntent() Description copied from interface:ObjectClassComplexTypeDefinitionTODO: THIS SHOULD NOT BE HERE- Specified by:
- getIntentin interface- ObjectClassComplexTypeDefinition
- Returns:
 
 - 
setIntentpublic void setIntent(String intent) 
 - 
getKindpublic ShadowKindType getKind() Description copied from interface:ObjectClassComplexTypeDefinitionTODO: THIS SHOULD NOT BE HERE- Specified by:
- getKindin interface- ObjectClassComplexTypeDefinition
- Returns:
 
 - 
setKindpublic void setKind(ShadowKindType kind) 
 - 
getVolatilitypublic ResourceObjectVolatilityType getVolatility() - Specified by:
- getVolatilityin interface- RefinedObjectClassDefinition
 
 - 
getMultiplicitypublic ResourceObjectMultiplicityType getMultiplicity() - Specified by:
- getMultiplicityin interface- RefinedObjectClassDefinition
 
 - 
getProjectionpublic ProjectionPolicyType getProjection() - Specified by:
- getProjectionin interface- RefinedObjectClassDefinition
 
 - 
canRepresentpublic boolean canRepresent(QName typeName) - Specified by:
- canRepresentin interface- TypeDefinition
 
 - 
getObjectDefinitionpublic PrismObjectDefinition<ShadowType> getObjectDefinition() - Specified by:
- getObjectDefinitionin interface- RefinedObjectClassDefinition
 
 - 
createBlankShadowpublic PrismObject<ShadowType> createBlankShadow(RefinedObjectClassDefinition definition) - Specified by:
- createBlankShadowin interface- RefinedObjectClassDefinition
 
 - 
getShadowDiscriminatorpublic ResourceShadowDiscriminator getShadowDiscriminator() - Specified by:
- getShadowDiscriminatorin interface- RefinedObjectClassDefinition
 
 - 
matchespublic boolean matches(ShadowType shadowType) - Specified by:
- matchesin interface- ObjectClassComplexTypeDefinition
- Specified by:
- matchesin interface- RefinedObjectClassDefinition
 
 - 
matchesWithoutIntentpublic boolean matchesWithoutIntent(ShadowType shadowType) - Specified by:
- matchesWithoutIntentin interface- RefinedObjectClassDefinition
 
 - 
createShadowSearchQuerypublic ObjectQuery createShadowSearchQuery(String resourceOid) throws SchemaException - Specified by:
- createShadowSearchQueryin interface- ObjectClassComplexTypeDefinition
- Throws:
- SchemaException
 
 - 
getAuxiliaryObjectClassDefinitions@NotNull public @NotNull Collection<RefinedObjectClassDefinition> getAuxiliaryObjectClassDefinitions() - Specified by:
- getAuxiliaryObjectClassDefinitionsin interface- RefinedObjectClassDefinition
 
 - 
hasAuxiliaryObjectClasspublic boolean hasAuxiliaryObjectClass(QName expectedObjectClassName) - Specified by:
- hasAuxiliaryObjectClassin interface- RefinedObjectClassDefinition
 
 - 
getAuxiliaryObjectClassMappingspublic ResourceBidirectionalMappingAndDefinitionType getAuxiliaryObjectClassMappings() - Specified by:
- getAuxiliaryObjectClassMappingsin interface- RefinedObjectClassDefinition
 
 - 
getProtectedObjectPatternspublic Collection<ResourceObjectPattern> getProtectedObjectPatterns() - Specified by:
- getProtectedObjectPatternsin interface- RefinedObjectClassDefinition
 
 - 
getPasswordDefinitionpublic ResourcePasswordDefinitionType getPasswordDefinition() - Specified by:
- getPasswordDefinitionin interface- RefinedObjectClassDefinition
 
 - 
getPasswordInboundpublic List<MappingType> getPasswordInbound() - Specified by:
- getPasswordInboundin interface- RefinedObjectClassDefinition
 
 - 
getPasswordOutboundpublic List<MappingType> getPasswordOutbound() - Specified by:
- getPasswordOutboundin interface- RefinedObjectClassDefinition
 
 - 
getPasswordFetchStrategypublic AttributeFetchStrategyType getPasswordFetchStrategy() - Specified by:
- getPasswordFetchStrategyin interface- RefinedObjectClassDefinition
 
 - 
getSecurityPolicyRefpublic ObjectReferenceType getSecurityPolicyRef() - Specified by:
- getSecurityPolicyRefin interface- RefinedObjectClassDefinition
 
 - 
getPasswordPolicy@Deprecated public ObjectReferenceType getPasswordPolicy() Deprecated.- Specified by:
- getPasswordPolicyin interface- RefinedObjectClassDefinition
 
 - 
getActivationSchemaHandlingpublic ResourceActivationDefinitionType getActivationSchemaHandling() - Specified by:
- getActivationSchemaHandlingin interface- RefinedObjectClassDefinition
 
 - 
getActivationBidirectionalMappingTypepublic ResourceBidirectionalMappingType getActivationBidirectionalMappingType(QName propertyName) - Specified by:
- getActivationBidirectionalMappingTypein interface- RefinedObjectClassDefinition
 
 - 
getActivationFetchStrategypublic AttributeFetchStrategyType getActivationFetchStrategy(QName propertyName) - Specified by:
- getActivationFetchStrategyin interface- RefinedObjectClassDefinition
 
 - 
getCapabilitiespublic CapabilitiesType getCapabilities() - Specified by:
- getCapabilitiesin interface- RefinedObjectClassDefinition
 
 - 
getEffectiveCapabilitypublic <T extends CapabilityType> T getEffectiveCapability(Class<T> capabilityClass, ResourceType resourceType) - Specified by:
- getEffectiveCapabilityin interface- RefinedObjectClassDefinition
 
 - 
getPagedSearchespublic PagedSearchCapabilityType getPagedSearches(ResourceType resourceType) - Specified by:
- getPagedSearchesin interface- RefinedObjectClassDefinition
 
 - 
isPagedSearchEnabledpublic boolean isPagedSearchEnabled(ResourceType resourceType) - Specified by:
- isPagedSearchEnabledin interface- RefinedObjectClassDefinition
 
 - 
isObjectCountingEnabledpublic boolean isObjectCountingEnabled(ResourceType resourceType) - Specified by:
- isObjectCountingEnabledin interface- RefinedObjectClassDefinition
 
 - 
acceptpublic void accept(Visitor<Definition> visitor) - Specified by:
- acceptin interface- Visitable<Definition>
 
 - 
acceptpublic boolean accept(Visitor<Definition> visitor, SmartVisitation<Definition> visitation) - Specified by:
- acceptin interface- SmartVisitable<Definition>
- Returns:
- false if we already was here
 
 - 
clone@NotNull public @NotNull RefinedObjectClassDefinitionImpl clone() Description copied from interface:ComplexTypeDefinitionDoes a shallow clone of this definition (i.e. item definitions themselves are NOT cloned).- Specified by:
- clonein interface- ComplexTypeDefinition
- Specified by:
- clonein interface- Definition
- Specified by:
- clonein interface- ObjectClassComplexTypeDefinition
- Specified by:
- clonein interface- RefinedObjectClassDefinition
- Overrides:
- clonein class- Object
 
 - 
deepClone@NotNull public @NotNull RefinedObjectClassDefinition deepClone(Map<QName,ComplexTypeDefinition> ctdMap, Map<QName,ComplexTypeDefinition> onThisPath, Consumer<ItemDefinition> postCloneAction) Description copied from interface:ComplexTypeDefinitionDoes a deep clone of this definition.- Specified by:
- deepClonein interface- ComplexTypeDefinition
- Specified by:
- deepClonein interface- ObjectClassComplexTypeDefinition
- Specified by:
- deepClonein interface- RefinedObjectClassDefinition
- Parameters:
- ctdMap- Keeps already cloned definitions when 'ultra deep cloning' is not requested. Each definition is then cloned only once.
- onThisPath- Keeps already cloned definitions on the path from root to current node; in order to prevent infinite loops when doing ultra deep cloning.
 
 - 
forLayerpublic LayerRefinedObjectClassDefinition forLayer(@NotNull @NotNull LayerType layerType) Creates a derived version of this ROCD for a given layer. TODO clone if necessary/if specified (currently there is no cloning)- Specified by:
- forLayerin interface- RefinedObjectClassDefinition
- Parameters:
- layerType-
- Returns:
 
 - 
getTypeName@NotNull public @NotNull QName getTypeName() Description copied from interface:DefinitionReturns a name of the type for this definition. The type can be part of the compile-time schema or it can be defined at run time. Examples of the former case are types like c:UserType, xsd:string, or even flexible ones like c:ExtensionType or c:ShadowAttributesType. Examples of the latter case are types used in - custom extensions, like ext:LocationsType (where ext = e.g. http://example.com/extension), - resource schema, like ri:inetOrgPerson (ri = http://.../resource/instance-3), - connector schema, like TODO In XML representation that corresponds to the name of the XSD type. Although beware, the run-time types do not have statically defined structure. And the resource and connector-related types may even represent different kinds of objects within different contexts (e.g. two distinct resources both with ri:AccountObjectClass types). Also note that for complex type definitions, the type name serves as a unique identifier. On the other hand, for item definitions, it is just one of its attributes; primary key is item name in that case. The type name should be fully qualified. (TODO reconsider this)- Specified by:
- getTypeNamein interface- Definition
- Returns:
- the type name
 
 - 
getNativeObjectClasspublic String getNativeObjectClass() Description copied from interface:ObjectClassComplexTypeDefinitionReturns the native object class string for the resource object. Native object class is the name of the Resource Object Definition (Object Class) as it is seen by the resource itself. The name of the Resource Object Definition may be constrained by XSD or other syntax and therefore may be "mangled" to conform to such syntax. The native object class value will contain unmangled name (if available). Returns null if there is no native object class. The exception should be never thrown unless there is some bug in the code. The validation of model consistency should be done at the time of schema parsing.- Specified by:
- getNativeObjectClassin interface- ObjectClassComplexTypeDefinition
- Returns:
- native object class
 
 - 
isAuxiliarypublic boolean isAuxiliary() Description copied from interface:ObjectClassComplexTypeDefinitionTODO- Specified by:
- isAuxiliaryin interface- ObjectClassComplexTypeDefinition
- Returns:
 
 - 
getPrismContextpublic PrismContext getPrismContext() - Specified by:
- getPrismContextin interface- PrismContextSensitive
 
 - 
getStaticSubTypes@NotNull public @NotNull Collection<TypeDefinition> getStaticSubTypes() Description copied from interface:TypeDefinitionSubtypes - but only these that are a part of the static schema. A little bit experimental. :)- Specified by:
- getStaticSubTypesin interface- TypeDefinition
 
 - 
getCompileTimeClass@Nullable public @Nullable Class<?> getCompileTimeClass() Description copied from interface:TypeDefinitionReturns compile-time class, if this type has any. For example, UserType.class, ObjectType.class, ExtensionType.class.- Specified by:
- getCompileTimeClassin interface- TypeDefinition
 
 - 
getExtensionForType@Nullable public @Nullable QName getExtensionForType() Description copied from interface:ComplexTypeDefinitionIf not null, indicates that this type defines the structure of 'extension' element of a given type. E.g. getExtensionForType() == c:UserType means that this complex type defines structure of 'extension' elements of UserType objects.- Specified by:
- getExtensionForTypein interface- ComplexTypeDefinition
 
 - 
isReferenceMarkerpublic boolean isReferenceMarker() Description copied from interface:ComplexTypeDefinitionFlag indicating whether this type was marked as "objectReference" in the original schema.- Specified by:
- isReferenceMarkerin interface- ComplexTypeDefinition
 
 - 
isContainerMarkerpublic boolean isContainerMarker() Description copied from interface:ComplexTypeDefinitionFlag indicating whether this type was marked as "container" in the original schema. Does not provide any information to schema processing logic, just conveys the marker from original schema so we can serialize and deserialize the schema without loss of information.- Specified by:
- isContainerMarkerin interface- ComplexTypeDefinition
 
 - 
isObjectMarkerpublic boolean isObjectMarker() Description copied from interface:ComplexTypeDefinitionFlag indicating whether this type was marked as "object" in the original schema. Does not provide any information to schema processing logic, just conveys the marker from original schema so we can serialized and deserialize the schema without loss of information.- Specified by:
- isObjectMarkerin interface- ComplexTypeDefinition
 
 - 
isXsdAnyMarkerpublic boolean isXsdAnyMarker() Description copied from interface:ComplexTypeDefinitionTrue if the complex type definition contains xsd:any (directly or indirectly).- Specified by:
- isXsdAnyMarkerin interface- ComplexTypeDefinition
 
 - 
findItemDefinitionpublic <ID extends ItemDefinition> ID findItemDefinition(@NotNull @NotNull ItemPath path, @NotNull @NotNull Class<ID> clazz) - Specified by:
- findItemDefinitionin interface- LocalDefinitionStore
 
 - 
findNamedItemDefinitionpublic <ID extends ItemDefinition> ID findNamedItemDefinition(@NotNull @NotNull QName firstName, @NotNull @NotNull ItemPath rest, @NotNull @NotNull Class<ID> clazz) - Specified by:
- findNamedItemDefinitionin interface- LocalDefinitionStore
 
 - 
getDefaultNamespace@Nullable public @Nullable String getDefaultNamespace() Description copied from interface:ComplexTypeDefinitionWhen resolving unqualified names for items contained in this CTD, what should be the default namespace to look into at first. Currently does NOT apply recursively (to inner CTDs).- Specified by:
- getDefaultNamespacein interface- ComplexTypeDefinition
 
 - 
isRuntimeSchemapublic boolean isRuntimeSchema() Description copied from interface:DefinitionThis means that this particular definition (of an item or of a type) is part of the runtime schema, e.g. extension schema, resource schema or connector schema or something like that. I.e. it is not defined statically.- Specified by:
- isRuntimeSchemain interface- Definition
 
 - 
getIgnoredNamespaces@NotNull public @NotNull List<String> getIgnoredNamespaces() Description copied from interface:ComplexTypeDefinitionWhen resolving unqualified names for items contained in this CTD, what namespace(s) should be ignored. Names in this list are interpreted as a namespace prefixes. Currently does NOT apply recursively (to inner CTDs).- Specified by:
- getIgnoredNamespacesin interface- ComplexTypeDefinition
 
 - 
getSuperType@Nullable public @Nullable QName getSuperType() Description copied from interface:TypeDefinitionName of super type of this complex type definition. E.g. c:ObjectType is a super type for c:FocusType which is a super type for c:UserType. Or (more complex example) ri:ShadowAttributesType is a super type of ri:AccountObjectClass. (TODO is this really true?)- Specified by:
- getSuperTypein interface- TypeDefinition
 
 - 
mergepublic void merge(ComplexTypeDefinition otherComplexTypeDef) Description copied from interface:ComplexTypeDefinitionCopies cloned definitions from the other type definition into this one. (TODO remove from the interface?)- Specified by:
- mergein interface- ComplexTypeDefinition
 
 - 
revivepublic void revive(PrismContext prismContext) - Specified by:
- revivein interface- ComplexTypeDefinition
- Specified by:
- revivein interface- Revivable
 
 - 
isIgnoredpublic boolean isIgnored() Description copied from interface:DefinitionItem definition that has this flag set should be ignored by any processing. The ignored item is still part of the schema. Item instances may appear in the serialized data formats (e.g. XML) or data store and the parser should not raise an error if it encounters them. But any high-level processing code should ignore presence of this item. E.g. it should not be displayed to the user, should not be present in transformed data structures, etc. Note that the same item can be ignored at higher layer (e.g. presentation) but not ignored at lower layer (e.g. model). This works by presenting different item definitions for these layers (see LayerRefinedAttributeDefinition). Semantics of this flag for complex type definitions is to be defined yet.- Specified by:
- isIgnoredin interface- Definition
 
 - 
getProcessingpublic ItemProcessing getProcessing() - Specified by:
- getProcessingin interface- Definition
 
 - 
getSchemaMigrationspublic List<SchemaMigration> getSchemaMigrations() - Specified by:
- getSchemaMigrationsin interface- Definition
 
 - 
isAbstractpublic boolean isAbstract() - Specified by:
- isAbstractin interface- Definition
 
 - 
isEmptypublic boolean isEmpty() Description copied from interface:ComplexTypeDefinitionReturns true if there are no item definitions.- Specified by:
- isEmptyin interface- ComplexTypeDefinition
 
 - 
isDeprecatedpublic boolean isDeprecated() - Specified by:
- isDeprecatedin interface- Definition
 
 - 
getDeprecatedSincepublic String getDeprecatedSince() - Specified by:
- getDeprecatedSincein interface- Definition
 
 - 
isExperimentalpublic boolean isExperimental() Description copied from interface:DefinitionExperimental functionality is not stable and it may be changed in any future release without any warning. Use at your own risk.- Specified by:
- isExperimentalin interface- Definition
 
 - 
getPlannedRemovalpublic String getPlannedRemoval() Description copied from interface:DefinitionVersion of data model in which the item is likely to be removed. This annotation is used for deprecated item to indicate imminent incompatibility in future versions of data model.- Specified by:
- getPlannedRemovalin interface- Definition
 
 - 
isElaboratepublic boolean isElaborate() Description copied from interface:DefinitionElaborate items are complicated data structure that may deviate from normal principles of the system. For example elaborate items may not be supported in user interface and may only be manageable by raw edits or a special-purpose tools. Elaborate items may be not fully supported by authorizations, schema tools and so on.- Specified by:
- isElaboratein interface- Definition
 
 - 
isEmphasizedpublic boolean isEmphasized() Description copied from interface:DefinitionTrue for definitions that are more important than others and that should be emphasized during presentation. E.g. the emphasized definitions will always be displayed in the user interfaces (even if they are empty), they will always be included in the dumps, etc.- Specified by:
- isEmphasizedin interface- Definition
 
 - 
getDisplayOrderpublic Integer getDisplayOrder() Description copied from interface:DefinitionSpecifies an order in which the item should be displayed relative to other items at the same level. The items will be displayed by sorting them by the values of displayOrder annotation (ascending). Items that do not have any displayOrder annotation will be displayed last. The ordering of values with the same displayOrder is undefined and it may be arbitrary.- Specified by:
- getDisplayOrderin interface- Definition
 
 - 
getHelppublic String getHelp() Description copied from interface:DefinitionReturns help string. Specifies the help text or a key to catalog file for a help text. The help text may be displayed in any suitable way by the GUI. It should explain the meaning of an attribute or object class. Returns null if no help string is set. Corresponds to "help" XSD annotation.- Specified by:
- getHelpin interface- Definition
- Returns:
- help string or catalog key
 
 - 
getDocumentationpublic String getDocumentation() - Specified by:
- getDocumentationin interface- Definition
 
 - 
getDocumentationPreviewpublic String getDocumentationPreview() Description copied from interface:DefinitionReturns only a first sentence of documentation.- Specified by:
- getDocumentationPreviewin interface- Definition
 
 - 
getTypeClassIfKnownpublic Class getTypeClassIfKnown() - Specified by:
- getTypeClassIfKnownin interface- Definition
 
 - 
getTypeClasspublic Class getTypeClass() Description copied from interface:DefinitionReturns 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:
- getTypeClassin interface- Definition
 
 - 
instantiatepublic ResourceAttributeContainer instantiate(QName elementName) - Specified by:
- instantiatein interface- ObjectClassComplexTypeDefinition
 
 - 
isListMarkerpublic boolean isListMarker() - Specified by:
- isListMarkerin interface- ComplexTypeDefinition
 
 - 
parseFromSchemapublic static RefinedObjectClassDefinition parseFromSchema(ObjectClassComplexTypeDefinition objectClassDef, ResourceType resourceType, RefinedResourceSchema rSchema, PrismContext prismContext, String contextDescription) throws SchemaException - Throws:
- SchemaException
 
 - 
debugDumppublic String debugDump(int indent) - Specified by:
- debugDumpin interface- DebugDumpable
 
 - 
debugDumppublic static String debugDump(int indent, LayerType layer, RefinedObjectClassDefinition _this) 
 - 
getDebugDumpClassNamepublic String getDebugDumpClassName() Return a human readable name of this class suitable for logs.- Specified by:
- getDebugDumpClassNamein interface- RefinedObjectClassDefinition
 
 - 
getHumanReadableNamepublic String getHumanReadableName() - Specified by:
- getHumanReadableNamein interface- RefinedObjectClassDefinition
 
 - 
findAttributeDefinitionpublic <X> RefinedAttributeDefinition<X> findAttributeDefinition(@NotNull @NotNull QName name) Description copied from interface:ObjectClassComplexTypeDefinitionFinds a attribute definition by looking at the property name. Returns null if nothing is found.- Specified by:
- findAttributeDefinitionin interface- ObjectClassComplexTypeDefinition
- Specified by:
- findAttributeDefinitionin interface- RefinedObjectClassDefinition
- Parameters:
- name- property definition name
- Returns:
- found property definition or null
 
 - 
trimTopublic void trimTo(@NotNull @NotNull Collection<ItemPath> paths)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 interface- ComplexTypeDefinition
 
 - 
toMutablepublic MutableObjectClassComplexTypeDefinition toMutable() - Specified by:
- toMutablein interface- ComplexTypeDefinition
- Specified by:
- toMutablein interface- Definition
- Specified by:
- toMutablein interface- ObjectClassComplexTypeDefinition
 
 - 
isSharedpublic boolean isShared() Description copied from interface:ComplexTypeDefinitionIs this definition shared, i.e. used by more than one prism object? If so, it should not be e.g. trimmed. EXPERIMENTAL- Specified by:
- isSharedin interface- ComplexTypeDefinition
 
 - 
getAnnotationpublic <A> A getAnnotation(QName qname) Description copied from interface:DefinitionReturns generic definition annotation. Annotations are a method to extend schema definitions. This may be annotation stored in the schema definition file (e.g. XSD) or it may be a dynamic annotation determined at run-time. Annotation value should be a prism-supported object. E.g. a prims "bean" (JAXB annotated class), prism item, prism value or something like that. EXPERIMENTAL. Hic sunt leones. This may change at any moment. Note: annotations are only partially supported now (3.8). They are somehow transient. E.g. they are not serialized to XSD schema definitions (yet).- Specified by:
- getAnnotationin interface- Definition
 
 - 
setAnnotationpublic <A> void setAnnotation(QName qname, A value) - Specified by:
- setAnnotationin interface- Definition
 
 - 
getInstantiationOrderpublic Integer getInstantiationOrder() - Specified by:
- getInstantiationOrderin interface- TypeDefinition
 
 - 
isImmutablepublic boolean isImmutable() - Specified by:
- isImmutablein interface- Freezable
 
 
- 
 
-