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 ResourceObjectDefinitionReturns 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, 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, hasSubstitutions, isContainerMarker, isEmpty, isItemDefinitionRemoved, isListMarker, isObjectMarker, isReferenceMarker, isStrictAnyMarker, isXsdAnyMarker, itemOrSubstitution, merge, substitution, toMutable, trimToMethods 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.PrismContextSensitive
getPrismContextMethods 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, validateMethods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
acceptMethods 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:
getAuxiliaryDefinitionsin 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:
getConfiguredAuxiliaryObjectClassNamesin 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.
-