Interface RefinedObjectClassDefinition
-
- All Superinterfaces:
Cloneable
,ComplexTypeDefinition
,DebugDumpable
,Definition
,LocalDefinitionStore
,ObjectClassComplexTypeDefinition
,Revivable
,Serializable
,TypeDefinition
,Visitable
- All Known Subinterfaces:
CompositeRefinedObjectClassDefinition
,LayerRefinedObjectClassDefinition
- All Known Implementing Classes:
CompositeRefinedObjectClassDefinitionImpl
,LayerRefinedObjectClassDefinitionImpl
,RefinedObjectClassDefinitionImpl
public interface RefinedObjectClassDefinition extends ObjectClassComplexTypeDefinition
- Author:
- mederly
-
-
Field Summary
-
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
-
Method Summary
-
Methods inherited from interface com.evolveum.midpoint.prism.ComplexTypeDefinition
containsItemDefinition, getDefaultNamespace, getDefinitions, getExtensionForType, getIgnoredNamespaces, isContainerMarker, isEmpty, isListMarker, isObjectMarker, isReferenceMarker, isShared, isXsdAnyMarker, merge, revive, trimTo
-
Methods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDump, debugDumpLazily, debugDumpLazily
-
Methods inherited from interface com.evolveum.midpoint.prism.Definition
debugDump, getAnnotation, getDeprecatedSince, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getPlannedRemoval, getPrismContext, getProcessing, getSchemaMigrations, getSchemaRegistry, getTypeClass, getTypeClassIfKnown, getTypeName, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRuntimeSchema, setAnnotation
-
Methods inherited from interface com.evolveum.midpoint.prism.LocalDefinitionStore
findContainerDefinition, findContainerDefinition, findItemDefinition, findItemDefinition, findLocalItemDefinition, findLocalItemDefinition, findNamedItemDefinition, findPropertyDefinition, findReferenceDefinition, findReferenceDefinition
-
Methods inherited from interface com.evolveum.midpoint.schema.processor.ObjectClassComplexTypeDefinition
createShadowSearchQuery, findAttributeDefinition, getIntent, getKind, getNativeObjectClass, instantiate, isAuxiliary, isDefaultInAKind, isPrimaryIdentifier, isSecondaryIdentifier, toMutable, toResourceAttributeContainerDefinition, toResourceAttributeContainerDefinition
-
Methods inherited from interface com.evolveum.midpoint.prism.TypeDefinition
canRepresent, getCompileTimeClass, getInstantiationOrder, getStaticSubTypes, getSuperType
-
-
-
-
Method Detail
-
getAttributeDefinitions
@NotNull Collection<? extends RefinedAttributeDefinition<?>> getAttributeDefinitions()
Returns definitions of all attributes as an unmodifiable collection. Note: content of this is exactly the same as for getDefinitions- Specified by:
getAttributeDefinitions
in interfaceObjectClassComplexTypeDefinition
-
containsAttributeDefinition
default boolean containsAttributeDefinition(ItemPathType pathType)
-
containsAttributeDefinition
default boolean containsAttributeDefinition(@NotNull QName attributeName)
-
getNamesOfAttributesWithOutboundExpressions
Collection<? extends QName> getNamesOfAttributesWithOutboundExpressions()
-
getNamesOfAttributesWithInboundExpressions
Collection<? extends QName> getNamesOfAttributesWithInboundExpressions()
-
getPrimaryIdentifiers
@NotNull Collection<? extends RefinedAttributeDefinition<?>> getPrimaryIdentifiers()
Description copied from interface:ObjectClassComplexTypeDefinition
Returns 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:
getPrimaryIdentifiers
in interfaceObjectClassComplexTypeDefinition
- Returns:
- definition of identifier attributes
-
getSecondaryIdentifiers
@NotNull Collection<? extends RefinedAttributeDefinition<?>> getSecondaryIdentifiers()
Description copied from interface:ObjectClassComplexTypeDefinition
Returns 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:
getSecondaryIdentifiers
in interfaceObjectClassComplexTypeDefinition
- Returns:
- definition of secondary identifier attributes
-
getAllIdentifiers
default Collection<? extends RefinedAttributeDefinition<?>> getAllIdentifiers()
Description copied from interface:ObjectClassComplexTypeDefinition
Returns both primary and secondary identifiers.- Specified by:
getAllIdentifiers
in interfaceObjectClassComplexTypeDefinition
-
getDescriptionAttribute
<X> RefinedAttributeDefinition<X> getDescriptionAttribute()
Description copied from interface:ObjectClassComplexTypeDefinition
Returns 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:
getDescriptionAttribute
in interfaceObjectClassComplexTypeDefinition
-
getNamingAttribute
<X> RefinedAttributeDefinition<X> getNamingAttribute()
Description copied from interface:ObjectClassComplexTypeDefinition
TODO- Specified by:
getNamingAttribute
in interfaceObjectClassComplexTypeDefinition
-
getDisplayNameAttribute
<X> RefinedAttributeDefinition<X> getDisplayNameAttribute()
Description copied from interface:ObjectClassComplexTypeDefinition
Returns 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:
getDisplayNameAttribute
in interfaceObjectClassComplexTypeDefinition
-
getAssociationDefinitions
@NotNull Collection<RefinedAssociationDefinition> getAssociationDefinitions()
Returns 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.)
-
getAssociationDefinitions
Collection<RefinedAssociationDefinition> getAssociationDefinitions(ShadowKindType kind)
-
findAssociationDefinition
RefinedAssociationDefinition findAssociationDefinition(QName name)
-
getNamesOfAssociations
Collection<QName> getNamesOfAssociations()
-
getNamesOfAssociationsWithOutboundExpressions
Collection<? extends QName> getNamesOfAssociationsWithOutboundExpressions()
-
getNamesOfAssociationsWithInboundExpressions
Collection<? extends QName> getNamesOfAssociationsWithInboundExpressions()
-
getDescription
String getDescription()
-
getObjectClassDefinition
ObjectClassComplexTypeDefinition getObjectClassDefinition()
-
getResourceOid
String getResourceOid()
-
isDefault
boolean isDefault()
-
getBaseContext
ResourceObjectReferenceType getBaseContext()
-
getSearchHierarchyScope
SearchHierarchyScope getSearchHierarchyScope()
-
getHumanReadableName
String getHumanReadableName()
-
getVolatility
ResourceObjectVolatilityType getVolatility()
-
getMultiplicity
ResourceObjectMultiplicityType getMultiplicity()
-
getProjection
ProjectionPolicyType getProjection()
-
getObjectDefinition
PrismObjectDefinition<ShadowType> getObjectDefinition()
-
createBlankShadow
default PrismObject<ShadowType> createBlankShadow()
-
createBlankShadow
PrismObject<ShadowType> createBlankShadow(RefinedObjectClassDefinition definition)
-
getShadowDiscriminator
ResourceShadowDiscriminator getShadowDiscriminator()
-
matches
boolean matches(ShadowType shadowType)
- Specified by:
matches
in interfaceObjectClassComplexTypeDefinition
-
matchesWithoutIntent
boolean matchesWithoutIntent(ShadowType shadowType)
-
getAuxiliaryObjectClassDefinitions
@NotNull Collection<RefinedObjectClassDefinition> getAuxiliaryObjectClassDefinitions()
-
hasAuxiliaryObjectClass
boolean hasAuxiliaryObjectClass(QName expectedObjectClassName)
-
getAuxiliaryObjectClassMappings
ResourceBidirectionalMappingAndDefinitionType getAuxiliaryObjectClassMappings()
-
getProtectedObjectPatterns
Collection<ResourceObjectPattern> getProtectedObjectPatterns()
-
getPasswordDefinition
ResourcePasswordDefinitionType getPasswordDefinition()
-
getPasswordInbound
List<MappingType> getPasswordInbound()
-
getPasswordOutbound
List<MappingType> getPasswordOutbound()
-
getPasswordFetchStrategy
AttributeFetchStrategyType getPasswordFetchStrategy()
-
getPasswordPolicy
@Deprecated ObjectReferenceType getPasswordPolicy()
Deprecated.
-
getSecurityPolicyRef
ObjectReferenceType getSecurityPolicyRef()
-
getActivationSchemaHandling
ResourceActivationDefinitionType getActivationSchemaHandling()
-
getActivationBidirectionalMappingType
ResourceBidirectionalMappingType getActivationBidirectionalMappingType(QName propertyName)
-
getActivationFetchStrategy
AttributeFetchStrategyType getActivationFetchStrategy(QName propertyName)
-
getCapabilities
CapabilitiesType getCapabilities()
-
getEffectiveCapability
<T extends CapabilityType> T getEffectiveCapability(Class<T> capabilityClass, ResourceType resourceType)
-
getPagedSearches
PagedSearchCapabilityType getPagedSearches(ResourceType resourceType)
-
isPagedSearchEnabled
boolean isPagedSearchEnabled(ResourceType resourceType)
-
isObjectCountingEnabled
boolean isObjectCountingEnabled(ResourceType resourceType)
-
clone
@NotNull RefinedObjectClassDefinition clone()
Description copied from interface:ComplexTypeDefinition
Does a shallow clone of this definition (i.e. item definitions themselves are NOT cloned).- Specified by:
clone
in interfaceComplexTypeDefinition
- Specified by:
clone
in interfaceDefinition
- Specified by:
clone
in interfaceObjectClassComplexTypeDefinition
-
deepClone
@NotNull RefinedObjectClassDefinition deepClone(Map<QName,ComplexTypeDefinition> ctdMap, Map<QName,ComplexTypeDefinition> onThisPath, Consumer<ItemDefinition> postCloneAction)
Description copied from interface:ComplexTypeDefinition
Does a deep clone of this definition.- Specified by:
deepClone
in interfaceComplexTypeDefinition
- Specified by:
deepClone
in interfaceObjectClassComplexTypeDefinition
- 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.
-
forLayer
LayerRefinedObjectClassDefinition forLayer(@NotNull LayerType layerType)
-
findAttributeDefinition
<X> RefinedAttributeDefinition<X> findAttributeDefinition(@NotNull QName name)
Description copied from interface:ObjectClassComplexTypeDefinition
Finds a attribute definition by looking at the property name. Returns null if nothing is found.- Specified by:
findAttributeDefinition
in interfaceObjectClassComplexTypeDefinition
- Parameters:
name
- property definition name- Returns:
- found property definition or null
-
findAttributeDefinition
default <X> RefinedAttributeDefinition<X> findAttributeDefinition(String name)
- Specified by:
findAttributeDefinition
in interfaceObjectClassComplexTypeDefinition
-
getDebugDumpClassName
String getDebugDumpClassName()
-
-