org.hibernate.tuple.entity
Class EntityMetamodel

java.lang.Object
  extended byorg.hibernate.tuple.entity.EntityMetamodel
All Implemented Interfaces:
Serializable

public class EntityMetamodel
extends Object
implements Serializable

Centralizes metamodel information about an entity.

Author:
Steve Ebersole
See Also:
Serialized Form

Constructor Summary
EntityMetamodel(PersistentClass persistentClass, SessionFactoryImplementor sessionFactory)
           
 
Method Summary
 String findEntityNameByEntityClass(Class inheritenceClass)
          Return the entity-name mapped to the given class within our inheritence hierarchy, if any.
 CascadeStyle[] getCascadeStyles()
           
 EntityType getEntityType()
           
 IdentifierProperty getIdentifierProperty()
           
 String getName()
           
 int[] getNaturalIdentifierProperties()
           
 boolean[] getNonlazyPropertyUpdateability()
           
 int getOptimisticLockMode()
           
 StandardProperty[] getProperties()
           
 boolean[] getPropertyCheckability()
           
 int getPropertyIndex(String propertyName)
           
 Integer getPropertyIndexOrNull(String propertyName)
           
 boolean[] getPropertyInsertability()
           
 ValueInclusion[] getPropertyInsertGenerationInclusions()
           
 boolean[] getPropertyLaziness()
           
 String[] getPropertyNames()
           
 boolean[] getPropertyNullability()
           
 int getPropertySpan()
           
 Type[] getPropertyTypes()
           
 boolean[] getPropertyUpdateability()
           
 ValueInclusion[] getPropertyUpdateGenerationInclusions()
           
 boolean[] getPropertyVersionability()
           
 String getRootName()
           
 SessionFactoryImplementor getSessionFactory()
           
 Set getSubclassEntityNames()
           
 String getSuperclass()
           
 EntityTuplizer getTuplizer(EntityMode entityMode)
           
 EntityEntityModeToTuplizerMapping getTuplizerMapping()
           
 EntityTuplizer getTuplizerOrNull(EntityMode entityMode)
           
 VersionProperty getVersionProperty()
           
 int getVersionPropertyIndex()
           
 EntityMode guessEntityMode(Object object)
           
 boolean hasCascades()
           
 boolean hasCollections()
           
 boolean hasImmutableNaturalId()
           
 boolean hasInsertGeneratedValues()
           
 boolean hasLazyProperties()
           
 boolean hasMutableProperties()
           
 boolean hasNaturalIdentifier()
           
 boolean hasNonIdentifierPropertyNamedId()
           
 boolean hasSubclasses()
           
 boolean hasUpdateGeneratedValues()
           
 boolean isAbstract()
           
 boolean isDynamicInsert()
           
 boolean isDynamicUpdate()
           
 boolean isExplicitPolymorphism()
           
 boolean isInherited()
           
 boolean isLazy()
           
 boolean isMutable()
           
 boolean isPolymorphic()
           
 boolean isSelectBeforeUpdate()
           
 boolean isVersioned()
           
 void setLazy(boolean lazy)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

EntityMetamodel

public EntityMetamodel(PersistentClass persistentClass,
                       SessionFactoryImplementor sessionFactory)
Method Detail

getTuplizerMapping

public EntityEntityModeToTuplizerMapping getTuplizerMapping()

getTuplizer

public EntityTuplizer getTuplizer(EntityMode entityMode)

getTuplizerOrNull

public EntityTuplizer getTuplizerOrNull(EntityMode entityMode)

guessEntityMode

public EntityMode guessEntityMode(Object object)

getNaturalIdentifierProperties

public int[] getNaturalIdentifierProperties()

hasNaturalIdentifier

public boolean hasNaturalIdentifier()

hasImmutableNaturalId

public boolean hasImmutableNaturalId()

getSubclassEntityNames

public Set getSubclassEntityNames()

getSessionFactory

public SessionFactoryImplementor getSessionFactory()

getName

public String getName()

getRootName

public String getRootName()

getEntityType

public EntityType getEntityType()

getIdentifierProperty

public IdentifierProperty getIdentifierProperty()

getPropertySpan

public int getPropertySpan()

getVersionPropertyIndex

public int getVersionPropertyIndex()

getVersionProperty

public VersionProperty getVersionProperty()

getProperties

public StandardProperty[] getProperties()

getPropertyIndex

public int getPropertyIndex(String propertyName)

getPropertyIndexOrNull

public Integer getPropertyIndexOrNull(String propertyName)

hasCollections

public boolean hasCollections()

hasMutableProperties

public boolean hasMutableProperties()

hasNonIdentifierPropertyNamedId

public boolean hasNonIdentifierPropertyNamedId()

hasLazyProperties

public boolean hasLazyProperties()

hasCascades

public boolean hasCascades()

isMutable

public boolean isMutable()

isSelectBeforeUpdate

public boolean isSelectBeforeUpdate()

isDynamicUpdate

public boolean isDynamicUpdate()

isDynamicInsert

public boolean isDynamicInsert()

getOptimisticLockMode

public int getOptimisticLockMode()

isPolymorphic

public boolean isPolymorphic()

getSuperclass

public String getSuperclass()

isExplicitPolymorphism

public boolean isExplicitPolymorphism()

isInherited

public boolean isInherited()

hasSubclasses

public boolean hasSubclasses()

isLazy

public boolean isLazy()

setLazy

public void setLazy(boolean lazy)

isVersioned

public boolean isVersioned()

isAbstract

public boolean isAbstract()

findEntityNameByEntityClass

public String findEntityNameByEntityClass(Class inheritenceClass)
Return the entity-name mapped to the given class within our inheritence hierarchy, if any.

Parameters:
inheritenceClass - The class for which to resolve the entity-name.
Returns:
The mapped entity-name, or null if no such mapping was found.

toString

public String toString()

getPropertyNames

public String[] getPropertyNames()

getPropertyTypes

public Type[] getPropertyTypes()

getPropertyLaziness

public boolean[] getPropertyLaziness()

getPropertyUpdateability

public boolean[] getPropertyUpdateability()

getPropertyCheckability

public boolean[] getPropertyCheckability()

getNonlazyPropertyUpdateability

public boolean[] getNonlazyPropertyUpdateability()

getPropertyInsertability

public boolean[] getPropertyInsertability()

getPropertyInsertGenerationInclusions

public ValueInclusion[] getPropertyInsertGenerationInclusions()

getPropertyUpdateGenerationInclusions

public ValueInclusion[] getPropertyUpdateGenerationInclusions()

getPropertyNullability

public boolean[] getPropertyNullability()

getPropertyVersionability

public boolean[] getPropertyVersionability()

getCascadeStyles

public CascadeStyle[] getCascadeStyles()

hasInsertGeneratedValues

public boolean hasInsertGeneratedValues()

hasUpdateGeneratedValues

public boolean hasUpdateGeneratedValues()