Interface TypeDefinition

All Superinterfaces:
AbstractTypeDefinition, Cloneable, DebugDumpable, Definition, Freezable, PrismLifecycleDefinition, PrismPresentationDefinition, Revivable, Serializable, SmartVisitable<Definition>, Visitable<Definition>
All Known Subinterfaces:
ComplexTypeDefinition, ComplexTypeDefinitionDelegator, CompositeObjectDefinition, CompositeObjectDefinitionDelegator, EnumerationTypeDefinition, ResourceObjectClassDefinition, ResourceObjectClassDefinitionDelegator, ResourceObjectDefinition, ResourceObjectDefinitionDelegator, ResourceObjectTypeDefinition, ResourceObjectTypeDefinitionDelegator, ShadowAssociationsComplexTypeDefinition, ShadowAttributesComplexTypeDefinition, ShadowItemsComplexTypeDefinition, SimpleTypeDefinition, TypeDefinitionDelegator
All Known Implementing Classes:
AbstractResourceObjectDefinitionImpl, CompositeObjectDefinitionImpl, ResourceObjectClassDefinitionImpl, ResourceObjectTypeDefinitionImpl

public interface TypeDefinition extends Definition, AbstractTypeDefinition
Definition of a type (as opposed to definition of an item).
See Also:
  • Method Details

    • getCompileTimeClass

      @Nullable @Nullable Class<?> getCompileTimeClass()
      Returns compile-time class, if this type has any. For example, UserType.class, ObjectType.class, ExtensionType.class.
    • getSuperType

      @Nullable @Nullable QName getSuperType()
      Name of super type of this complex type definition. For example, `c:ObjectType` is a super type for `c:FocusType` which is a super type for `c:UserType`. Extension types have `c:ExtensionType` as their supertype, if no explicit supertype is specified in XSD.
    • getStaticSubTypes

      @NotNull @NotNull Collection<TypeDefinition> getStaticSubTypes()
      Subtypes - but only these that are a part of the static schema. A little bit experimental. :)
    • getInstantiationOrder

      Integer getInstantiationOrder()
    • canRepresent

      boolean canRepresent(QName typeName)
    • isAssignableFrom

      @Experimental default boolean isAssignableFrom(TypeDefinition other, SchemaRegistry registry)
      Returns:
      True if variables of this type can be assigned value of specified other type, i.e. if this type is equal or supertype of the other type.