Interface CompositeObjectDefinition
- All Superinterfaces:
AssociationDefinitionStore
,AttributeDefinitionStore
,Cloneable
,ComplexTypeDefinition
,DebugDumpable
,Definition
,Freezable
,IdentifiersDefinitionStore
,LayeredDefinition
,LocalItemDefinitionStore
,PrismContextSensitive
,ResourceObjectDefinition
,Revivable
,Serializable
,SmartVisitable<Definition>
,TypeDefinition
,Visitable<Definition>
- All Known Subinterfaces:
CompositeObjectDefinitionDelegator
- All Known Implementing Classes:
CompositeObjectDefinitionImpl
,TransformableComplexTypeDefinition.TrCompositeObjectDefinition
Represents ad-hoc combination of definitions of structural and auxiliary object classes.
- Author:
- semancik
-
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING
-
Method Summary
Modifier and TypeMethodDescription@NotNull Collection<ResourceObjectDefinition>
Returns auxiliary definitions.default Collection<QName>
Returns the names of auxiliary object classes that are "statically" defined for the structural object type.@NotNull ResourceObjectDefinition
Returns the structural definition that represents the "base" of this composite definition.of
(@NotNull ResourceObjectDefinition structuralDefinition, @Nullable Collection<ResourceObjectDefinition> auxiliaryDefinitions) Returns immutable definition.Methods inherited from interface com.evolveum.midpoint.schema.processor.AssociationDefinitionStore
findAssociationDefinition, findAssociationDefinitionRequired, getAssociationDefinitions, getAssociationDefinitions, getNamesOfAssociations, getNamesOfAssociationsWithInboundExpressions, getNamesOfAssociationsWithOutboundExpressions
Methods inherited from interface com.evolveum.midpoint.schema.processor.AttributeDefinitionStore
containsAttributeDefinition, findAttributeDefinition, findAttributeDefinition, findAttributeDefinition, findAttributeDefinitionRequired, findAttributeDefinitionRequired, findAttributeDefinitionStrictlyRequired, findAttributeDefinitionStrictlyRequired, getAttributeDefinitions, getAttributeDefinitions, getNamesOfAttributesWithInboundExpressions, getNamesOfAttributesWithOutboundExpressions, hasIndexOnlyAttributes, propertyToAttribute
Methods inherited from interface com.evolveum.midpoint.prism.ComplexTypeDefinition
getDefaultNamespace, getDefinitions, getExtensionForType, getIgnoredNamespaces, getXmlAttributeDefinitions, hasOperationalOnlyItems, hasSubstitutions, hasSubstitutions, isContainerMarker, isEmpty, isItemDefinitionRemoved, isListMarker, isObjectMarker, isReferenceMarker, isStrictAnyMarker, isXsdAnyMarker, itemOrSubstitution, merge, substitution, toMutable, 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, getAnnotations, getDeprecatedSince, getDiagrams, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, getMutabilityFlag, getPlannedRemoval, getProcessing, getRemovedSince, getSchemaMigrations, getSchemaRegistry, getTypeClass, getTypeName, isAbstract, isDeprecated, isElaborate, isEmphasized, isExperimental, isIgnored, isRemoved, isRuntimeSchema, setAnnotation
Methods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutable
Methods inherited from interface com.evolveum.midpoint.schema.processor.IdentifiersDefinitionStore
getAllIdentifiers, getPrimaryIdentifierRequired, getPrimaryIdentifiers, getPrimaryIdentifiersNames, getSecondaryIdentifiers, getSecondaryIdentifiersNames, isIdentifier, isPrimaryIdentifier, isSecondaryIdentifier
Methods inherited from interface com.evolveum.midpoint.schema.processor.LayeredDefinition
getCurrentLayer
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.PrismContextSensitive
getPrismContext
Methods inherited from interface com.evolveum.midpoint.schema.processor.ResourceObjectDefinition
clone, createBlankShadow, createShadowSearchQuery, deepClone, forLayerImmutable, forLayerMutable, getActivationBidirectionalMappingType, getActivationFetchStrategy, getActivationSchemaHandling, getAuxiliaryObjectClassMappings, getBaseContext, getDebugDumpClassName, getDefaultInboundMappingEvaluationPhases, getDefinitionBean, getDelineation, getDescription, getDescriptionAttribute, getDescriptionAttributeName, getDisplayNameAttribute, getDisplayNameAttributeName, getEnabledCapability, getHumanReadableName, getLifecycleState, getNamingAttribute, getNamingAttributeName, getObjectClassDefinition, getObjectClassName, getObjectMultiplicity, getPasswordDefinition, getPasswordFetchStrategy, getPasswordInbound, getPasswordOutbound, getPrismObjectDefinition, getProjectionPolicy, getProtectedObjectPatterns, getRawObjectClassDefinition, getResourceOid, getSearchHierarchyScope, getSecurityPolicyRef, getTypeDefinition, getTypeIdentification, getVolatility, hasAuxiliaryObjectClass, instantiate, isDefaultFor, matchesObjectClassName, replaceDefinition, replaceDefinition, toResourceAttributeContainerDefinition, toResourceAttributeContainerDefinition, validate
Methods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
accept
Methods inherited from interface com.evolveum.midpoint.prism.TypeDefinition
canRepresent, getCompileTimeClass, getInstantiationOrder, getStaticSubTypes, getSuperType, isAssignableFrom
-
Method Details
-
getStructuralDefinition
Returns the structural definition that represents the "base" of this composite definition. -
getAuxiliaryDefinitions
Returns auxiliary definitions. They enrich the structural definition e.g. by adding attribute definitions. TODO specify better- Specified by:
getAuxiliaryDefinitions
in interfaceResourceObjectDefinition
-
getConfiguredAuxiliaryObjectClassNames
Returns the names of auxiliary object classes that are "statically" defined for the structural object type. (The restriction to the structural definition is intentional.)- Specified by:
getConfiguredAuxiliaryObjectClassNames
in interfaceResourceObjectDefinition
- See Also:
-
of
static CompositeObjectDefinitionImpl of(@NotNull @NotNull ResourceObjectDefinition structuralDefinition, @Nullable @Nullable Collection<ResourceObjectDefinition> auxiliaryDefinitions) Returns immutable definition. Assumes component definitions are immutable. FIXME sometimes, the `structuralDefinition` is itself a composite definition. We should avoid wrapping it into another composite definitions. Please fix this some day. See MID-9156.
-