Interface JpaMetamodel

All Superinterfaces:
Metamodel
All Known Subinterfaces:
JpaMetamodelImplementor, Metamodel, MetamodelImplementor
All Known Implementing Classes:
JpaMetamodelImpl, MappingMetamodelImpl

@Incubating public interface JpaMetamodel extends Metamodel
Extensions to the JPA-defined metamodel of persistent Java types.
Since:
6.0
Author:
Steve Ebersole
See Also:
  • Method Details

    • getTypeConfiguration

      TypeConfiguration getTypeConfiguration()
      todo (6.0) : should we expose JpaMetamodel from TypeConfiguration?
    • getServiceRegistry

      ServiceRegistry getServiceRegistry()
    • managedType

      <X> ManagedDomainType<X> managedType(String typeName)
      Access to a managed type through its name
    • entity

      <X> EntityDomainType<X> entity(String entityName)
      Access to an entity supporting Hibernate's entity-name feature
    • embeddable

      <X> EmbeddableDomainType<X> embeddable(String embeddableName)
      Access to an embeddable type from FQN
    • getHqlEntityReference

      <X> EntityDomainType<X> getHqlEntityReference(String entityName)
      Specialized handling for resolving entity-name references in an HQL query
    • resolveHqlEntityReference

      <X> EntityDomainType<X> resolveHqlEntityReference(String entityName)
      Specialized handling for resolving entity-name references in an HQL query
    • findManagedType

      <X> ManagedDomainType<X> findManagedType(Class<X> cls)
      Same as managedType(java.lang.String) except null is returned rather than throwing an exception
    • findEntityType

      <X> EntityDomainType<X> findEntityType(Class<X> cls)
      Same as entity(java.lang.String) except null is returned rather than throwing an exception
    • qualifyImportableName

      String qualifyImportableName(String queryName)
    • getEnumTypesForValue

      @Nullable Set<String> getEnumTypesForValue(String enumValue)
    • getEnumType

      EnumJavaType<?> getEnumType(String className)
    • enumValue

      <E extends Enum<E>> E enumValue(EnumJavaType<E> enumType, String enumValueName)
    • getJavaConstantType

      JavaType<?> getJavaConstantType(String className, String fieldName)
    • getJavaConstant

      <T> T getJavaConstant(String className, String fieldName)
    • managedType

      <X> ManagedDomainType<X> managedType(Class<X> cls)
      Description copied from interface: Metamodel
      Return the metamodel managed type representing the entity, mapped superclass, or embeddable class.
      Specified by:
      managedType in interface Metamodel
      Parameters:
      cls - the type of the represented managed class
      Returns:
      the metamodel managed type
    • entity

      <X> EntityDomainType<X> entity(Class<X> cls)
      Description copied from interface: Metamodel
      Return the metamodel entity type representing the entity.
      Specified by:
      entity in interface Metamodel
      Parameters:
      cls - the type of the represented entity
      Returns:
      the metamodel entity type
    • embeddable

      <X> EmbeddableDomainType<X> embeddable(Class<X> cls)
      Description copied from interface: Metamodel
      Return the metamodel embeddable type representing the embeddable class.
      Specified by:
      embeddable in interface Metamodel
      Parameters:
      cls - the type of the represented embeddable class
      Returns:
      the metamodel embeddable type
    • getManagedTypes

      Set<ManagedType<?>> getManagedTypes()
      Description copied from interface: Metamodel
      Return the metamodel managed types.
      Specified by:
      getManagedTypes in interface Metamodel
      Returns:
      the metamodel managed types
    • getEntities

      Set<EntityType<?>> getEntities()
      Description copied from interface: Metamodel
      Return the metamodel entity types.
      Specified by:
      getEntities in interface Metamodel
      Returns:
      the metamodel entity types
    • getEmbeddables

      Set<EmbeddableType<?>> getEmbeddables()
      Description copied from interface: Metamodel
      Return the metamodel embeddable types. Returns empty set if there are no embeddable types.
      Specified by:
      getEmbeddables in interface Metamodel
      Returns:
      the metamodel embeddable types
    • addNamedEntityGraph

      <T> void addNamedEntityGraph(String graphName, RootGraphImplementor<T> entityGraph)
    • findEntityGraphByName

      <T> RootGraphImplementor<T> findEntityGraphByName(String name)
    • findEntityGraphsByJavaType

      <T> List<RootGraphImplementor<? super T>> findEntityGraphsByJavaType(Class<T> entityClass)
    • getJpaCompliance

      JpaCompliance getJpaCompliance()