Interface CompositeObjectDefinition
- All Superinterfaces:
 AbstractTypeDefinition,AssociationDefinitionStore,AttributeDefinitionStore,Cloneable,DebugDumpable,Definition,FrameworkNameResolver,Freezable,IdentifiersDefinitionStore,LayeredDefinition,LocalItemDefinitionStore,PrismLifecycleDefinition,PrismPresentationDefinition,ResourceObjectDefinition,ResourceObjectInboundProcessingDefinition,Revivable,SchemaLookup.Aware,Serializable,SmartVisitable<Definition>,TypeDefinition,Visitable<Definition>
- All Known Subinterfaces:
 CompositeObjectDefinitionDelegator
- All Known Implementing Classes:
 CompositeObjectDefinitionImpl
Represents ad-hoc combination of definitions of structural and auxiliary object classes.
- Author:
 - semancik
 
- 
Nested Class Summary
Nested classes/interfaces inherited from interface com.evolveum.midpoint.prism.Definition
Definition.DefinitionBuilder, Definition.DefinitionMutatorNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
PrismLifecycleDefinition.Data, PrismLifecycleDefinition.Delegable, PrismLifecycleDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
PrismPresentationDefinition.Data, PrismPresentationDefinition.Delegable, PrismPresentationDefinition.MutableNested classes/interfaces inherited from interface com.evolveum.midpoint.schema.processor.ResourceObjectInboundProcessingDefinition
ResourceObjectInboundProcessingDefinition.AssociationBasedItemImplementation, ResourceObjectInboundProcessingDefinition.AssociationSynchronizationImplementation, ResourceObjectInboundProcessingDefinition.CompleteItemInboundDefinition, ResourceObjectInboundProcessingDefinition.FocusSpecification, ResourceObjectInboundProcessingDefinition.ItemInboundProcessingDefinitionNested classes/interfaces inherited from interface com.evolveum.midpoint.prism.TypeDefinition
TypeDefinition.TypeDefinitionLikeBuilder, TypeDefinition.TypeDefinitionMutator - 
Field Summary
Fields inherited from interface com.evolveum.midpoint.util.DebugDumpable
INDENT_STRING - 
Method Summary
Modifier and TypeMethodDescription@NotNull Collection<? extends ResourceObjectDefinition>Returns auxiliary definitions.default @NotNull 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.static @NotNull CompositeObjectDefinitionImplmutableOf(@NotNull ResourceObjectDefinition structuralDefinition, @Nullable Collection<? extends ResourceObjectDefinition> auxiliaryDefinitions) static @NotNull CompositeObjectDefinitionImplof(@NotNull ResourceObjectDefinition structuralDefinition, @Nullable Collection<? extends ResourceObjectDefinition> auxiliaryDefinitions) Returns immutable definition.Methods inherited from interface com.evolveum.midpoint.prism.AbstractTypeDefinition
getTypeNameMethods inherited from interface com.evolveum.midpoint.schema.processor.AssociationDefinitionStore
findAssociationDefinition, findAssociationDefinitionRequired, findAssociationDefinitionRequired, getAssociationDefinitions, getNamesOfAssociationsMethods inherited from interface com.evolveum.midpoint.schema.processor.AttributeDefinitionStore
containsAttributeDefinition, findAttributeDefinition, findAttributeDefinition, findAttributeDefinitionRequired, findAttributeDefinitionRequired, findAttributeDefinitionStrictlyRequired, findAttributeDefinitionStrictlyRequired, findReferenceAttributeDefinitionRequired, findReferenceAttributeDefinitionRequired, findShadowAttributeDefinitionRequired, findSimpleAttributeDefinition, findSimpleAttributeDefinition, findSimpleAttributeDefinition, findSimpleAttributeDefinitionRequired, findSimpleAttributeDefinitionRequired, findSimpleAttributeDefinitionRequired, findSimpleAttributeDefinitionStrictlyRequired, findSimpleAttributeDefinitionStrictlyRequired, getAllSimpleAttributesNames, getAttributeDefinitions, getAttributeDefinitions, getAttributeNames, getReferenceAttributesNames, getSimpleAttributeDefinitions, hasIndexOnlyAttributes, instantiateAttributeMethods inherited from interface com.evolveum.midpoint.util.DebugDumpable
debugDump, debugDump, debugDumpLazily, debugDumpLazilyMethods inherited from interface com.evolveum.midpoint.prism.Definition
checkMutableOnExposing, debugDump, getAnnotation, getAnnotations, getMergerIdentifier, getMergerInstance, getMutabilityFlag, getNaturalKeyConstituents, getNaturalKeyInstance, getSchemaContextDefinition, getTypeClass, getTypeName, isAbstract, isElaborate, isOptionalCleanup, isRuntimeSchema, mutatorMethods inherited from interface com.evolveum.midpoint.schema.processor.FrameworkNameResolver
resolveFrameworkNameMethods inherited from interface com.evolveum.midpoint.prism.Freezable
checkImmutable, checkMutable, freeze, isImmutableMethods inherited from interface com.evolveum.midpoint.schema.processor.IdentifiersDefinitionStore
getAllIdentifiers, getAllIdentifiersNames, getPrimaryIdentifierRequired, getPrimaryIdentifiers, getPrimaryIdentifiersNames, getSecondaryIdentifierRequired, 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, findLocalItemDefinitionByIteration, findPropertyDefinition, findReferenceDefinition, getDefinitionsMethods inherited from interface com.evolveum.midpoint.prism.PrismLifecycleDefinition
getDeprecatedSince, getPlannedRemoval, getRemovedSince, getSchemaMigrations, isDeprecated, isExperimental, isRemovedMethods inherited from interface com.evolveum.midpoint.prism.PrismPresentationDefinition
getDiagrams, getDisplayHint, getDisplayName, getDisplayOrder, getDocumentation, getDocumentationPreview, getHelp, isEmphasizedMethods inherited from interface com.evolveum.midpoint.schema.processor.ResourceObjectDefinition
areCredentialsCached, areCredentialsCachedLegacy, assertAttached, canRepresent, clone, composite, createBlankShadow, createBlankShadowWithPrimaryId, createBlankShadowWithTag, createPrimaryIdentification, createShadowSearchQuery, deepClone, findReferenceAttributeDefinition, forLayerImmutable, forLayerMutable, getActivationBidirectionalMappingType, getActivationFetchStrategy, getActivationInboundMappings, getActivationSchemaHandling, getAssociationDefinitionsFor, getAssociationsComplexTypeDefinition, getAttributesComplexTypeDefinition, getAttributesVolatileOnAddOperation, getAttributesVolatileOnModifyOperation, getAuxiliaryObjectClassMappings, getAuxiliaryObjectClassNameForAttribute, getBaseContext, getBasicResourceInformation, getCompileTimeClass, getDebugDumpClassName, getDefaultInboundMappingEvaluationPhases, getDefaultOperationPolicyOid, getDefinitionBean, getDelineation, getDescription, getDescriptionAttribute, getDescriptionAttributeName, getDisplayNameAttribute, getDisplayNameAttributeName, getEffectiveShadowCachingPolicy, getEnabledCapability, getHumanReadableName, getIdentification, getInstantiationOrder, getLastLoginTimestampDefinition, getLastLoginTimestampFetchStrategy, getLifecycleState, getNamingAttribute, getNamingAttributeName, getNativeObjectClassDefinition, getObjectClassDefinition, getObjectClassLocalName, getObjectClassName, getObjectMultiplicity, getPasswordDefinition, getPasswordFetchStrategy, getPasswordInboundMappings, getPasswordOutboundMappings, getPrismObjectDefinition, getProjectionPolicy, getReferenceAttributeDefinitions, getReferenceAttributesComplexTypeDefinition, getResourceOid, getSearchHierarchyScope, getSecurityPolicyRef, getShadowMarkingRules, getShortIdentification, getSimpleAttributesComplexTypeDefinition, getStaticSubTypes, getSuperType, getTypeDefinition, getTypeIdentification, getVolatility, hasAuxiliaryObjectClass, isActivationCached, isAuxiliaryObjectClassPropertyCached, isCachingEnabled, isDefaultFor, isEffectivelyCached, matchesObjectClassName, queryFor, replaceAttributeDefinition, replaceAttributeDefinition, shouldUpdateCachingMetadata, toPrismObjectDefinition, toShadowAssociationsContainerDefinition, toShadowAttributesContainerDefinition, trimAttributesTo, validateMethods inherited from interface com.evolveum.midpoint.schema.processor.ResourceObjectInboundProcessingDefinition
getAuxiliaryObjectClassInboundMappings, getCorrelation, getFocusSpecification, getItemInboundDefinitions, getSynchronizationReactionsMethods inherited from interface com.evolveum.midpoint.prism.schema.SchemaLookup.Aware
schemaLookupMethods inherited from interface com.evolveum.midpoint.prism.SmartVisitable
acceptMethods inherited from interface com.evolveum.midpoint.prism.TypeDefinition
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
@NotNull static @NotNull CompositeObjectDefinitionImpl of(@NotNull @NotNull ResourceObjectDefinition structuralDefinition, @Nullable @Nullable Collection<? extends 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. - 
mutableOf
@NotNull static @NotNull CompositeObjectDefinitionImpl mutableOf(@NotNull @NotNull ResourceObjectDefinition structuralDefinition, @Nullable @Nullable Collection<? extends ResourceObjectDefinition> auxiliaryDefinitions)  
 -