All Superinterfaces:
Comparable<IMapping>
All Known Implementing Classes:
FromSubqueryResolver.VirtualMapping

public interface IMapping extends Comparable<IMapping>
The external representation of a mapping, which represents a single persistence property of a managed type.

Provisional API: This interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.

Since:
2.3
Version:
2.4
See Also:
  • Method Details

    • getMappingType

      int getMappingType()
      Returns the type of this mapping.
      Returns:
      One of the supported mapping type, which is one of the constants defined in IMappingType when the provider only supports generic JPA
    • getName

      String getName()
      Returns the name of the persistence property represented by this mapping.
      Returns:
      The name of this mapping
    • getParent

      IManagedType getParent()
      Returns the parent managed type owning this mapping.
      Returns:
      The parent of this mapping
    • getType

      IType getType()
      Returns the type of this mapping. If this mapping is a relationship mapping, the parameter type of the collection is returned.

      @OneToMany
      private Collection<Employee> employees;

      "Employee" is the type. To retrieve Collection, getTypeDeclaration() needs to be used, its type will be Collection and it's generic type will be Employee.

      Returns:
      The external form representing the type of this mapping
    • getTypeDeclaration

      ITypeDeclaration getTypeDeclaration()
      Returns the declaration of the Java class, which gives the information about type parameters, dimensionality, etc.

      @OneToMany
      private Collection<Employee> employees;

      "Collection<Employee>" is the type declaration.

      Returns:
      The external form of the class' type declaration
    • hasAnnotation

      boolean hasAnnotation(Class<? extends Annotation> annotationType)
      Determines whether the given annotation is present on this type.
      Parameters:
      annotationType - The class of the annotation
      Returns:
      true if the annotation is defined on this type; false otherwise
    • isCollection

      boolean isCollection()
      Determines whether this IMapping is a collection type mapping.
      Returns:
      true if this IMapping is a collection mapping; false otherwise
      Since:
      2.4
    • isEmbeddable

      boolean isEmbeddable()
      Determines whether this IMapping is an embeddable type mapping.
      Returns:
      true if this IMapping is an embeddable mapping; false otherwise
      Since:
      2.4
    • isProperty

      boolean isProperty()
      Determines whether this IMapping is a property type mapping.
      Returns:
      true if this IMapping is a property mapping; false otherwise
      Since:
      2.4
    • isRelationship

      boolean isRelationship()
      Determines whether this IMapping is a relationship type mapping.
      Returns:
      true if this IMapping is a relationship mapping; false otherwise
      Since:
      2.4
    • isTransient

      boolean isTransient()
      Determines whether this IMapping is a transient mapping.
      Returns:
      true if this IMapping is a transient mapping; false otherwise
      Since:
      2.4