Class ResourceObjectClassDefinitionImpl
java.lang.Object
com.evolveum.midpoint.prism.AbstractFreezable
com.evolveum.midpoint.schema.processor.AbstractResourceObjectDefinitionImpl
com.evolveum.midpoint.schema.processor.ResourceObjectClassDefinitionImpl
- All Implemented Interfaces:
ComplexTypeDefinition,Definition,Freezable,LocalItemDefinitionStore,MutableComplexTypeDefinition,MutableDefinition,MutableTypeDefinition,PrismContextSensitive,Revivable,SmartVisitable<Definition>,TypeDefinition,Visitable<Definition>,AssociationDefinitionStore,AttributeDefinitionStore,IdentifiersDefinitionStore,LayeredDefinition,MutableResourceObjectClassDefinition,ResourceObjectClassDefinition,ResourceObjectDefinition,DebugDumpable,Serializable,Cloneable
public class ResourceObjectClassDefinitionImpl
extends AbstractResourceObjectDefinitionImpl
implements MutableResourceObjectClassDefinition
Default implementation of
ResourceObjectClassDefinition.
TODO should we have subclasses for raw/refined variants? Maybe.- Author:
- semancik
- See Also:
-
Field Summary
Fields inherited from class com.evolveum.midpoint.schema.processor.AbstractResourceObjectDefinitionImpl
delineationFields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(Visitor<Definition> visitor) booleanaccept(Visitor<Definition> visitor, SmartVisitation<Definition> visitation) protected voidprotected voidaddDebugDumpTrailer(StringBuilder sb, int indent) voidaddDiagram(ItemDiagramSpecification diagram) voidvoidaddSchemaMigration(SchemaMigration schemaMigration) voidvoidaddSubstitution(ItemDefinition<?> itemDef, ItemDefinition<?> maybeSubst) @NotNull ResourceObjectClassDefinitionImplclone()Returns a mutable definition.protected @NotNull ResourceObjectClassDefinitionImplcloneInLayer(@NotNull LayerType layer) Returns mutable copy.protected voidcopyDefinitionDataFrom(@NotNull LayerType layer, ResourceObjectClassDefinition source) <T> ResourceAttributeDefinition<T>createAttributeDefinition(@NotNull QName name, @NotNull QName typeName, @NotNull Consumer<MutableRawResourceAttributeDefinition<?>> consumer) Returned value is immutable.createPropertyDefinition(String name, QName typeName) createPropertyDefinition(QName name, QName typeName) @NotNull ResourceObjectClassDefinitiondeepClone(@NotNull DeepCloneOperation operation) Returns a mutable definition.voidbooleanReturn a human readable name of this class suitable for logs.@Nullable QNameReturns name of the description attribute.@Nullable QNameReturns name of the display name attribute.<T extends CapabilityType>
TgetEnabledCapability(@NotNull Class<T> capabilityClass, ResourceType resource) Checks the presence of capability in: 1. resource object definition (applicable only to resource object _type_ definitions), 2. additional connectors in resource (only if enabled there), 3. the main connector.TODO@Nullable QNameReturns name of the naming attribute.Returns the native object class name.@NotNull ResourceObjectClassDefinitionReturns the (raw or refined) object class definition.@NotNull QNameReturns the name of the object class.@Nullable ResourcePasswordDefinitionType@NotNull ResourceObjectClassDefinitionReturns the raw object class definition.This is currently used only to pass information about association in the model-impl TODO consider removal!@Nullable ResourceObjectTypeDefinitionIs this definition bound to a specific resource type?@Nullable ResourceObjectTypeIdentificationIs this definition bound to a specific resource type?inthashCode()booleanReturns `true` if there are really any refinements (i.e. a refinement bean exists, even if it can be effectively empty, besides obligatory object class name reference).booleaninstantiate(@NotNull ItemName elementName) Creates aResourceAttributeContainerinstance with this definition as its complex type definition.static ResourceAttributeContainerinstantiate(@NotNull QName elementName, @NotNull ResourceObjectClassDefinition objectClassDefinition) booleanTODObooleanIndicates whether definition is the default account definition.booleanisDefaultFor(@NotNull ShadowKindType kind) Returns true if this definition can be considered as a default for the specified kind.booleanisRaw()Returns `true` if this definition is a part of the raw schema.refined(@NotNull ResourceObjectClassDefinition raw, @Nullable ResourceObjectTypeDefinitionType definitionBean) voidsetAbstract(boolean value) voidsetAuxiliary(boolean auxiliary) voidsetCompileTimeClass(Class<?> compileTimeClass) voidsetContainerMarker(boolean value) voidsetDefaultAccountDefinition(boolean value) voidsetDefaultNamespace(String namespace) voidsetDeprecated(boolean deprecated) voidvoidsetDisplayName(String displayName) voidsetDisplayOrder(Integer displayOrder) voidsetDocumentation(String value) voidsetEmphasized(boolean emphasized) voidsetExperimental(boolean experimental) voidsetExtensionForType(QName type) voidvoidsetIgnoredNamespaces(@NotNull List<String> ignoredNamespaces) voidsetInstantiationOrder(Integer order) voidsetListMarker(boolean value) voidsetNamingAttributeName(QName name) voidsetNativeObjectClass(String nativeObjectClass) voidsetObjectMarker(boolean value) voidsetProcessing(ItemProcessing processing) voidsetReferenceMarker(boolean value) voidsetRemoved(boolean removed) voidsetRemovedSince(String removedSince) voidsetRuntimeSchema(boolean value) voidsetSuperType(QName superType) voidsetTypeName(QName typeName) voidsetXsdAnyMarker(boolean value) substitution(QName name) Returns an interface to mutate this definition.toString()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.schema.processor.AbstractResourceObjectDefinitionImpl
add, canRepresent, copyDefinitionDataFrom, createBlankShadow, debugDump, debugDump, findAttributeDefinition, findItemDefinition, forLayerImmutable, forLayerMutable, getActivationSchemaHandling, getAnnotation, getAnnotations, getAssociationDefinitions, getAttributeDefinitions, getAuxiliaryDefinitions, getAuxiliaryObjectClassMappings, getBaseContext, getCompileTimeClass, getConfiguredAuxiliaryObjectClassNames, getCurrentLayer, getDefaultInboundMappingEvaluationPhases, getDefaultNamespace, getDefinitionBean, getDefinitions, getDelineation, getDeprecatedSince, getDescription, getDiagrams, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getExtensionForType, getHelp, getIgnoredNamespaces, getInstantiationOrder, getLifecycleState, getObjectMultiplicity, getPlannedRemoval, getPrimaryIdentifiers, getPrimaryIdentifiersNames, getPrismContext, getPrismObjectDefinition, getProcessing, getProjectionPolicy, getProtectedObjectPatterns, getRemovedSince, getSchemaMigrations, getSearchHierarchyScope, getSecondaryIdentifiers, getSecondaryIdentifiersNames, getStaticSubTypes, getSuperType, getTypeClass, getTypeName, getVolatility, hasAuxiliaryObjectClass, isAbstract, isContainerMarker, isDeprecated, isElaborate, isEmphasized, isEmpty, isExperimental, isListMarker, isObjectMarker, isReferenceMarker, isRemoved, isRuntimeSchema, isXsdAnyMarker, merge, performFreeze, replaceDefinition, revive, setAnnotation, setDisplayNameAttributeName, validateMethods inherited from class com.evolveum.midpoint.prism.AbstractFreezable
freeze, freeze, freezeAll, freezeNullableList, isImmutable, isMutableMethods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.evolveum.midpoint.schema.processor.AssociationDefinitionStore
findAssociationDefinition, findAssociationDefinitionRequired, getAssociationDefinitions, getAssociationDefinitions, getNamesOfAssociations, getNamesOfAssociationsWithInboundExpressions, getNamesOfAssociationsWithOutboundExpressionsMethods inherited from interface com.evolveum.midpoint.schema.processor.AttributeDefinitionStore
containsAttributeDefinition, findAttributeDefinition, findAttributeDefinition, findAttributeDefinition, findAttributeDefinitionRequired, findAttributeDefinitionRequired, findAttributeDefinitionStrictlyRequired, findAttributeDefinitionStrictlyRequired, getAttributeDefinitions, getAttributeDefinitions, getNamesOfAttributesWithInboundExpressions, getNamesOfAttributesWithOutboundExpressions, hasIndexOnlyAttributes, propertyToAttributeMethods inherited from interface com.evolveum.midpoint.prism.ComplexTypeDefinition
getDefaultNamespace, getDefinitions, getExtensionForType, getIgnoredNamespaces, getXmlAttributeDefinitions, hasOperationalOnlyItems, hasSubstitutions, isContainerMarker, isEmpty, isItemDefinitionRemoved, isListMarker, isObjectMarker, isReferenceMarker, isStrictAnyMarker, isXsdAnyMarker, itemOrSubstitution, mergeMethods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDump, debugDumpLazily, debugDumpLazilyMethods inherited from interface com.evolveum.midpoint.prism.Definition
debugDump, getAnnotation, getAnnotations, getDeprecatedSince, getDiagrams, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMutabilityFlag, getPlannedRemoval, getProcessing, getRemovedSince, getSchemaMigrations, getSchemaRegistry, getTypeClass, getTypeName, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRemoved, isRuntimeSchema, setAnnotationMethods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutableMethods inherited from interface com.evolveum.midpoint.schema.processor.IdentifiersDefinitionStore
getAllIdentifiers, getPrimaryIdentifierRequired, getPrimaryIdentifiers, getPrimaryIdentifiersNames, getSecondaryIdentifiers, getSecondaryIdentifiersNames, isIdentifier, isPrimaryIdentifier, isSecondaryIdentifierMethods inherited from interface com.evolveum.midpoint.schema.processor.LayeredDefinition
getCurrentLayerMethods inherited from interface com.evolveum.midpoint.prism.LocalItemDefinitionStore
containsItemDefinition, findContainerDefinition, findItemDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinition, findPropertyDefinition, findReferenceDefinitionMethods inherited from interface com.evolveum.midpoint.prism.MutableComplexTypeDefinition
replaceDefinition, setAttributeDefinitions, setStrictAnyMarkerMethods inherited from interface com.evolveum.midpoint.schema.processor.MutableResourceObjectClassDefinition
add, createAttributeDefinition, setDisplayNameAttributeNameMethods inherited from interface com.evolveum.midpoint.prism.PrismContextSensitive
getPrismContextMethods inherited from interface com.evolveum.midpoint.schema.processor.ResourceObjectClassDefinition
createShadowSearchQueryMethods inherited from interface com.evolveum.midpoint.schema.processor.ResourceObjectDefinition
createBlankShadow, forLayerImmutable, forLayerMutable, getActivationBidirectionalMappingType, getActivationFetchStrategy, getActivationSchemaHandling, getAuxiliaryDefinitions, getAuxiliaryObjectClassMappings, getBaseContext, getConfiguredAuxiliaryObjectClassNames, getDefaultInboundMappingEvaluationPhases, getDefinitionBean, getDelineation, getDescription, getDescriptionAttribute, getDisplayNameAttribute, getLifecycleState, getNamingAttribute, getObjectMultiplicity, getPasswordFetchStrategy, getPasswordInbound, getPasswordOutbound, getPrismObjectDefinition, getProjectionPolicy, getProtectedObjectPatterns, getSearchHierarchyScope, getVolatility, hasAuxiliaryObjectClass, matchesObjectClassName, replaceDefinition, replaceDefinition, toResourceAttributeContainerDefinition, toResourceAttributeContainerDefinition, validateMethods inherited from interface com.evolveum.midpoint.prism.TypeDefinition
canRepresent, getCompileTimeClass, getInstantiationOrder, getStaticSubTypes, getSuperType, isAssignableFrom
-
Method Details
-
raw
-
refined
public static ResourceObjectClassDefinitionImpl refined(@NotNull @NotNull ResourceObjectClassDefinition raw, @Nullable @Nullable ResourceObjectTypeDefinitionType definitionBean) throws ConfigurationException - Throws:
ConfigurationException
-
getObjectClassName
Description copied from interface:ResourceObjectDefinitionReturns the name of the object class.- Specified by:
getObjectClassNamein interfaceResourceObjectDefinition
-
getObjectClassDefinition
Description copied from interface:ResourceObjectDefinitionReturns the (raw or refined) object class definition. It is either this object itself (for object classes), or the linked object class definition (for object types).- Specified by:
getObjectClassDefinitionin interfaceResourceObjectDefinition
-
getRawObjectClassDefinition
Description copied from interface:ResourceObjectDefinitionReturns the raw object class definition.- Specified by:
getRawObjectClassDefinitionin interfaceResourceObjectDefinition
-
delete
- Specified by:
deletein interfaceMutableComplexTypeDefinition
-
createPropertyDefinition
- Specified by:
createPropertyDefinitionin interfaceMutableComplexTypeDefinition
-
createPropertyDefinition
- Specified by:
createPropertyDefinitionin interfaceMutableComplexTypeDefinition
-
addPrimaryIdentifierName
- Specified by:
addPrimaryIdentifierNamein interfaceMutableResourceObjectClassDefinition
-
addSecondaryIdentifierName
- Specified by:
addSecondaryIdentifierNamein interfaceMutableResourceObjectClassDefinition
-
getDescriptionAttributeName
Description copied from interface:ResourceObjectDefinitionReturns name of the description attribute.- Specified by:
getDescriptionAttributeNamein interfaceResourceObjectDefinition- See Also:
-
setDescriptionAttributeName
- Specified by:
setDescriptionAttributeNamein interfaceMutableResourceObjectClassDefinition
-
getNamingAttributeName
Description copied from interface:ResourceObjectDefinitionReturns name of the naming attribute.- Specified by:
getNamingAttributeNamein interfaceResourceObjectDefinition- See Also:
-
setNamingAttributeName
- Specified by:
setNamingAttributeNamein interfaceMutableResourceObjectClassDefinition
-
getDisplayNameAttributeName
Description copied from interface:ResourceObjectDefinitionReturns name of the display name attribute.- Specified by:
getDisplayNameAttributeNamein interfaceResourceObjectDefinition- See Also:
-
getNativeObjectClass
Description copied from interface:ResourceObjectClassDefinitionReturns the native object class name. Native object class is the name of the object class as it is seen by the resource itself. The name of the object class used in midPoint 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 original, un-mangled 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 interfaceResourceObjectClassDefinition- Returns:
- native object class
-
setNativeObjectClass
- Specified by:
setNativeObjectClassin interfaceMutableResourceObjectClassDefinition
-
isAuxiliary
public boolean isAuxiliary()Description copied from interface:ResourceObjectClassDefinitionTODO- Specified by:
isAuxiliaryin interfaceResourceObjectClassDefinition
-
setAuxiliary
public void setAuxiliary(boolean auxiliary) - Specified by:
setAuxiliaryin interfaceMutableResourceObjectClassDefinition
-
isDefaultAccountDefinition
public boolean isDefaultAccountDefinition()Description copied from interface:ResourceObjectClassDefinitionIndicates whether definition is the default account definition. (This feature is present for "dumb" resource definition that are completely without `schemaHandling` part.) This is a way how a resource connector may suggest applicable object classes. Currently the only use of this flag is that ConnId `pass:[__ACCOUNT__]` is declared as a default for the kind of `ACCOUNT`. Originally, this property was called `defaultInAKind` and marked the object class as being default for given kind. At that time, the kind was part of object class definition. This is no longer the case, therefore also this property is renamed - and is available only for account-like object classes. In the future we may put those things (kind + default-in-a-kind) back, if needed.- Specified by:
isDefaultAccountDefinitionin interfaceResourceObjectClassDefinition
-
setDefaultAccountDefinition
public void setDefaultAccountDefinition(boolean value) - Specified by:
setDefaultAccountDefinitionin interfaceMutableResourceObjectClassDefinition
-
createAttributeDefinition
public <T> ResourceAttributeDefinition<T> createAttributeDefinition(@NotNull @NotNull QName name, @NotNull @NotNull QName typeName, @NotNull @NotNull Consumer<MutableRawResourceAttributeDefinition<?>> consumer) Description copied from interface:MutableResourceObjectClassDefinitionReturned value is immutable.- Specified by:
createAttributeDefinitionin interfaceMutableResourceObjectClassDefinition
-
instantiate
Description copied from interface:ResourceObjectDefinitionCreates aResourceAttributeContainerinstance with this definition as its complex type definition.- Specified by:
instantiatein interfaceResourceObjectClassDefinition- Specified by:
instantiatein interfaceResourceObjectDefinition
-
instantiate
public static ResourceAttributeContainer instantiate(@NotNull @NotNull QName elementName, @NotNull @NotNull ResourceObjectClassDefinition objectClassDefinition) -
accept
- Specified by:
acceptin interfaceVisitable<Definition>- Overrides:
acceptin classAbstractResourceObjectDefinitionImpl
-
accept
- Specified by:
acceptin interfaceSmartVisitable<Definition>- Overrides:
acceptin classAbstractResourceObjectDefinitionImpl- Returns:
- false if we already was here
-
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- Overrides:
trimToin classAbstractResourceObjectDefinitionImpl
-
clone
Description copied from interface:ResourceObjectDefinitionReturns a mutable definition. BEWARE, the mutableCompositeObjectDefinitionis significantly slower than its immutable counterpart. See MID-9156.- Specified by:
clonein interfaceComplexTypeDefinition- Specified by:
clonein interfaceDefinition- Specified by:
clonein interfaceMutableComplexTypeDefinition- Specified by:
clonein interfaceResourceObjectClassDefinition- Specified by:
clonein interfaceResourceObjectDefinition- Specified by:
clonein classAbstractResourceObjectDefinitionImpl
-
cloneInLayer
@NotNull protected @NotNull ResourceObjectClassDefinitionImpl cloneInLayer(@NotNull @NotNull LayerType layer) Description copied from class:AbstractResourceObjectDefinitionImplReturns mutable copy.- Specified by:
cloneInLayerin classAbstractResourceObjectDefinitionImpl
-
setExtensionForType
- Specified by:
setExtensionForTypein interfaceMutableComplexTypeDefinition
-
setAbstract
public void setAbstract(boolean value) - Specified by:
setAbstractin interfaceMutableComplexTypeDefinition
-
setSuperType
- Specified by:
setSuperTypein interfaceMutableComplexTypeDefinition
-
setObjectMarker
public void setObjectMarker(boolean value) - Specified by:
setObjectMarkerin interfaceMutableComplexTypeDefinition
-
setContainerMarker
public void setContainerMarker(boolean value) - Specified by:
setContainerMarkerin interfaceMutableComplexTypeDefinition
-
setReferenceMarker
public void setReferenceMarker(boolean value) - Specified by:
setReferenceMarkerin interfaceMutableComplexTypeDefinition
-
setDefaultNamespace
- Specified by:
setDefaultNamespacein interfaceMutableComplexTypeDefinition
-
setIgnoredNamespaces
- Specified by:
setIgnoredNamespacesin interfaceMutableComplexTypeDefinition
-
setXsdAnyMarker
public void setXsdAnyMarker(boolean value) - Specified by:
setXsdAnyMarkerin interfaceMutableComplexTypeDefinition
-
setListMarker
public void setListMarker(boolean value) - Specified by:
setListMarkerin interfaceMutableComplexTypeDefinition
-
setCompileTimeClass
- Specified by:
setCompileTimeClassin interfaceMutableComplexTypeDefinition
-
addSubstitution
- Specified by:
addSubstitutionin interfaceMutableComplexTypeDefinition
-
setProcessing
- Specified by:
setProcessingin interfaceMutableDefinition
-
setDeprecated
public void setDeprecated(boolean deprecated) - Specified by:
setDeprecatedin interfaceMutableDefinition
-
setRemoved
public void setRemoved(boolean removed) - Specified by:
setRemovedin interfaceMutableDefinition
-
setRemovedSince
- Specified by:
setRemovedSincein interfaceMutableDefinition
-
setExperimental
public void setExperimental(boolean experimental) - Specified by:
setExperimentalin interfaceMutableDefinition
-
setEmphasized
public void setEmphasized(boolean emphasized) - Specified by:
setEmphasizedin interfaceMutableDefinition
-
setDisplayName
- Specified by:
setDisplayNamein interfaceMutableDefinition
-
setDisplayOrder
- Specified by:
setDisplayOrderin interfaceMutableDefinition
-
setHelp
- Specified by:
setHelpin interfaceMutableDefinition
-
setRuntimeSchema
public void setRuntimeSchema(boolean value) - Specified by:
setRuntimeSchemain interfaceMutableDefinition
-
setTypeName
- Specified by:
setTypeNamein interfaceMutableDefinition
-
setDocumentation
- Specified by:
setDocumentationin interfaceMutableDefinition
-
addSchemaMigration
- Specified by:
addSchemaMigrationin interfaceMutableDefinition
-
addDiagram
- Specified by:
addDiagramin interfaceMutableDefinition
-
setInstantiationOrder
- Specified by:
setInstantiationOrderin interfaceMutableTypeDefinition
-
deepClone
@NotNull public @NotNull ResourceObjectClassDefinition deepClone(@NotNull @NotNull DeepCloneOperation operation) Description copied from interface:ResourceObjectDefinitionReturns a mutable definition. BEWARE, the mutableCompositeObjectDefinitionis significantly slower than its immutable counterpart. See MID-9156.- Specified by:
deepClonein interfaceComplexTypeDefinition- Specified by:
deepClonein interfaceResourceObjectClassDefinition- Specified by:
deepClonein interfaceResourceObjectDefinition
-
getSecurityPolicyRef
- Specified by:
getSecurityPolicyRefin interfaceResourceObjectDefinition- Overrides:
getSecurityPolicyRefin classAbstractResourceObjectDefinitionImpl- See Also:
-
isRaw
public boolean isRaw()Description copied from interface:ResourceObjectClassDefinitionReturns `true` if this definition is a part of the raw schema. Note that if it's part of refined schema (but not refined in any way) the return value is `true`. See alsoResourceObjectClassDefinition.hasRefinements().- Specified by:
isRawin interfaceResourceObjectClassDefinition
-
hasRefinements
public boolean hasRefinements()Description copied from interface:ResourceObjectClassDefinitionReturns `true` if there are really any refinements (i.e. a refinement bean exists, even if it can be effectively empty, besides obligatory object class name reference).- Specified by:
hasRefinementsin interfaceResourceObjectClassDefinition
-
hasSubstitutions
public boolean hasSubstitutions()- Specified by:
hasSubstitutionsin interfaceComplexTypeDefinition
-
substitution
- Specified by:
substitutionin interfaceComplexTypeDefinition
-
copyDefinitionDataFrom
protected void copyDefinitionDataFrom(@NotNull @NotNull LayerType layer, ResourceObjectClassDefinition source) -
equals
- Overrides:
equalsin classAbstractResourceObjectDefinitionImpl
-
hashCode
public int hashCode()- Overrides:
hashCodein classAbstractResourceObjectDefinitionImpl
-
toMutable
Description copied from interface:DefinitionReturns an interface to mutate this definition.- Specified by:
toMutablein interfaceComplexTypeDefinition- Specified by:
toMutablein interfaceDefinition- Specified by:
toMutablein interfaceResourceObjectClassDefinition
-
getPasswordDefinition
Description copied from interface:ResourceObjectDefinition- Specified by:
getPasswordDefinitionin interfaceResourceObjectDefinition- Overrides:
getPasswordDefinitionin classAbstractResourceObjectDefinitionImpl
-
getEnabledCapability
public <T extends CapabilityType> T getEnabledCapability(@NotNull @NotNull Class<T> capabilityClass, ResourceType resource) Description copied from interface:ResourceObjectDefinitionChecks the presence of capability in: 1. resource object definition (applicable only to resource object _type_ definitions), 2. additional connectors in resource (only if enabled there), 3. the main connector. Returns the present capability, but only if it's enabled.- Specified by:
getEnabledCapabilityin interfaceResourceObjectDefinition- Overrides:
getEnabledCapabilityin classAbstractResourceObjectDefinitionImpl
-
getHumanReadableName
Description copied from interface:ResourceObjectDefinitionTODO- Specified by:
getHumanReadableNamein interfaceResourceObjectDefinition
-
toString
-
getDebugDumpClassName
Description copied from interface:ResourceObjectDefinitionReturn a human readable name of this class suitable for logs.- Specified by:
getDebugDumpClassNamein interfaceResourceObjectDefinition
-
addDebugDumpHeaderExtension
- Overrides:
addDebugDumpHeaderExtensionin classAbstractResourceObjectDefinitionImpl
-
addDebugDumpTrailer
- Overrides:
addDebugDumpTrailerin classAbstractResourceObjectDefinitionImpl
-
getResourceOid
Description copied from interface:ResourceObjectDefinitionThis is currently used only to pass information about association in the model-impl TODO consider removal!- Specified by:
getResourceOidin interfaceResourceObjectDefinition
-
getTypeIdentification
Description copied from interface:ResourceObjectDefinitionIs this definition bound to a specific resource type? If yes, this method returns its identification.- Specified by:
getTypeIdentificationin interfaceResourceObjectDefinition
-
getTypeDefinition
Description copied from interface:ResourceObjectDefinitionIs this definition bound to a specific resource type? If yes, this method returns its definition.- Specified by:
getTypeDefinitionin interfaceResourceObjectDefinition
-
isDefaultFor
Description copied from interface:ResourceObjectDefinitionReturns true if this definition can be considered as a default for the specified kind. Normally, for a type definition it means that it is marked as "default for a kind" and has the specified kind. But there is a special case ofResourceObjectClassDefinitionwithResourceObjectClassDefinition.isDefaultAccountDefinition()being `true`. It is considered to be the default forShadowKindType.ACCOUNT. Use with care!- Specified by:
isDefaultForin interfaceResourceObjectDefinition
-