Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.hibernate.mapping
Class PersistentClass

    java.lang.Object
      org.hibernate.mapping.PersistentClass

All Implemented Interfaces:
  Serializable, Filterable, MetaAttributable

Direct Known Subclasses:
  RootClass, Subclass

    public abstract class PersistentClass

extends Object
implements Serializable, Filterable, MetaAttributable

Mapping for an entity.

Author:
  Gavin King
See Also:
  Serialized Form

Field Summary
`static String` | `NOT_NULL_DISCRIMINATOR_MAPPING`
`static String` | `NULL_DISCRIMINATOR_MAPPING`
`protected int` | `optimisticLockMode`
`protected Set` | `synchronizedTables`

Constructor Summary
`PersistentClass()`

Method Summary
`abstract Object` | `accept(PersistentClassVisitor mv)`
`void` | `addFilter(String name, String condition)`
`void` | `addJoin(Join join)`
`void` | `addProperty(Property p)`
`void` | `addSubclass(Subclass subclass)`
`protected void` | `addSubclassJoin(Join join)`
`protected void` | `addSubclassProperty(Property prop)`
`protected void` | `addSubclassTable(Table subclassTable)`
`void` | `addSynchronizedTable(String table)`
`void` | `addTuplizer(EntityMode entityMode, String implClassName)`
`protected void` | `checkColumnDuplication()`
`protected void` | `checkColumnDuplication(Set distinctColumns, Iterator columns)`
`protected void` | `checkPropertyColumnDuplication(Set distinctColumns, Iterator properties)`
`void` | `createPrimaryKey()`
`int` | `getBatchSize()`
`abstract String` | `getCacheConcurrencyStrategy()`
`String` | `getClassName()`
`String` | `getCustomSQLDelete()`
`ExecuteUpdateResultCheckStyle` | `getCustomSQLDeleteCheckStyle()`
`String` | `getCustomSQLInsert()`
`ExecuteUpdateResultCheckStyle` | `getCustomSQLInsertCheckStyle()`
`String` | `getCustomSQLUpdate()`
`ExecuteUpdateResultCheckStyle` | `getCustomSQLUpdateCheckStyle()`
`Iterator` | `getDirectSubclasses()`
`abstract Value` | `getDiscriminator()`
`protected Iterator` | `getDiscriminatorColumnIterator()`
`String` | `getDiscriminatorValue()`
`String` | `getEntityName()`
`abstract Class` | `getEntityPersisterClass()`
`Map` | `getFilterMap()`
`abstract KeyValue` | `getIdentifier()`
`Component` | `getIdentifierMapper()`
`abstract Property` | `getIdentifierProperty()`
`Table` | `getIdentityTable()`
`Iterator` | `getJoinClosureIterator()`
`int` | `getJoinClosureSpan()`
`Iterator` | `getJoinIterator()`
`int` | `getJoinNumber(Property prop)`
`abstract KeyValue` | `getKey()`
`abstract Iterator` | `getKeyClosureIterator()`
`String` | `getLoaderName()`
`Class` | `getMappedClass()`
`MetaAttribute` | `getMetaAttribute(String name)`
`Map` | `getMetaAttributes()`
`String` | `getNodeName()`
`protected Iterator` | `getNonDuplicatedPropertyIterator()`
`abstract int` | `getOptimisticLockMode()`
`Property` | `getProperty(String propertyName)`
`abstract Iterator` | `getPropertyClosureIterator()`
`int` | `getPropertyClosureSpan()`
`Iterator` | `getPropertyIterator()` Build an iterator over the properties defined on this class.
`Class` | `getProxyInterface()`
`String` | `getProxyInterfaceName()`
`Property` | `getRecursiveProperty(String propertyPath)`
`Iterator` | `getReferenceablePropertyIterator()` Build an iterator of properties which are "referenceable".
`Property` | `getReferencedProperty(String propertyPath)` Given a property path, locate the appropriate referenceable property reference.
`abstract RootClass` | `getRootClass()`
`abstract Table` | `getRootTable()`
`Iterator` | `getSubclassClosureIterator()`
`abstract int` | `getSubclassId()`
`Iterator` | `getSubclassIterator()` Iterate over subclasses in a special 'order', most derived subclasses first.
`Iterator` | `getSubclassJoinClosureIterator()`
`Iterator` | `getSubclassPropertyClosureIterator()`
`int` | `getSubclassSpan()`
`Iterator` | `getSubclassTableClosureIterator()`
`abstract PersistentClass` | `getSuperclass()`
`abstract Set` | `getSynchronizedTables()`
`abstract Table` | `getTable()`
`abstract Iterator` | `getTableClosureIterator()`
`String` | `getTemporaryIdTableDDL()`
`String` | `getTemporaryIdTableName()`
`String` | `getTuplizerImplClassName(EntityMode mode)`
`Map` | `getTuplizerMap()`
`Iterator` | `getUnjoinedPropertyIterator()` Build an iterator over the properties defined on this class which are not defined as part of a join.
`abstract Property` | `getVersion()`
`abstract String` | `getWhere()`
`boolean` | `hasDom4jRepresentation()`
`abstract boolean` | `hasEmbeddedIdentifier()`
`boolean` | `hasIdentifierMapper()`
`abstract boolean` | `hasIdentifierProperty()`
`boolean` | `hasNaturalId()`
`boolean` | `hasPojoRepresentation()`
`boolean` | `hasSelectBeforeUpdate()`
`boolean` | `hasSubclasses()`
`boolean` | `hasSubselectLoadableCollections()`
`Boolean` | `isAbstract()`
`boolean` | `isClassOrSuperclassJoin(Join join)`
`boolean` | `isClassOrSuperclassTable(Table closureTable)`
`boolean` | `isCustomDeleteCallable()`
`boolean` | `isCustomInsertCallable()`
`boolean` | `isCustomUpdateCallable()`
`abstract boolean` | `isDiscriminatorInsertable()`
`boolean` | `isDiscriminatorValueNotNull()`
`boolean` | `isDiscriminatorValueNull()`
`abstract boolean` | `isExplicitPolymorphism()`
`boolean` | `isForceDiscriminator()`
`abstract boolean` | `isInherited()`
`abstract boolean` | `isJoinedSubclass()`
`boolean` | `isLazy()`
`abstract boolean` | `isLazyPropertiesCacheable()`
`abstract boolean` | `isMutable()`
`abstract boolean` | `isPolymorphic()`
`abstract boolean` | `isVersioned()`
`void` | `prepareTemporaryTables(Mapping mapping, Dialect dialect)`
`void` | `setAbstract(Boolean isAbstract)`
`void` | `setBatchSize(int batchSize)`
`void` | `setClassName(String className)`
`void` | `setCustomSQLDelete(String customSQLDelete, boolean callable, ExecuteUpdateResultCheckStyle checkStyle)`
`void` | `setCustomSQLInsert(String customSQLInsert, boolean callable, ExecuteUpdateResultCheckStyle checkStyle)`
`void` | `setCustomSQLUpdate(String customSQLUpdate, boolean callable, ExecuteUpdateResultCheckStyle checkStyle)`
`void` | `setDiscriminatorValue(String discriminatorValue)`
`void` | `setDynamicInsert(boolean dynamicInsert)`
`void` | `setDynamicUpdate(boolean dynamicUpdate)`
`void` | `setEntityName(String entityName)`
`abstract void` | `setEntityPersisterClass(Class classPersisterClass)`
`void` | `setIdentifierMapper(Component handle)`
`void` | `setLazy(boolean lazy)`
`void` | `setLoaderName(String loaderName)`
`void` | `setMetaAttributes(Map metas)`
`void` | `setNodeName(String nodeName)`
`void` | `setOptimisticLockMode(int optimisticLockMode)`
`void` | `setProxyInterfaceName(String proxyInterfaceName)`
`void` | `setSelectBeforeUpdate(boolean selectBeforeUpdate)`
`void` | `setSubselectLoadableCollections(boolean hasSubselectCollections)`
`String` | `toString()`
`boolean` | `useDynamicInsert()`
`boolean` | `useDynamicUpdate()`
`void` | `validate(Mapping mapping)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Field Detail

### NULL_DISCRIMINATOR_MAPPING

    public static final String NULL_DISCRIMINATOR_MAPPING

See Also:
  Constant Field Values

### NOT_NULL_DISCRIMINATOR_MAPPING

    public static final String NOT_NULL_DISCRIMINATOR_MAPPING

See Also:
  Constant Field Values

### synchronizedTables

    protected final Set synchronizedTables

### optimisticLockMode

    protected int optimisticLockMode

Constructor Detail

### PersistentClass

    public PersistentClass()

Method Detail

### getClassName

    public String getClassName()

### setClassName

    public void setClassName(String className)

### getProxyInterfaceName

    public String getProxyInterfaceName()

### setProxyInterfaceName

    public void setProxyInterfaceName(String proxyInterfaceName)

### getMappedClass

    public Class getMappedClass()
                         throws MappingException

  Throws:
    `MappingException`

### getProxyInterface

    public Class getProxyInterface()

### useDynamicInsert

    public boolean useDynamicInsert()

### getSubclassId

    public abstract int getSubclassId()

### useDynamicUpdate

    public boolean useDynamicUpdate()

### setDynamicInsert

    public void setDynamicInsert(boolean dynamicInsert)

### setDynamicUpdate

    public void setDynamicUpdate(boolean dynamicUpdate)

### getDiscriminatorValue

    public String getDiscriminatorValue()

### addSubclass

    public void addSubclass(Subclass subclass)
                     throws MappingException

  Throws:
    `MappingException`

### hasSubclasses

    public boolean hasSubclasses()

### getSubclassSpan

    public int getSubclassSpan()

### getSubclassIterator

    public Iterator getSubclassIterator()

  Iterate over subclasses in a special 'order', most derived subclasses first.

### getSubclassClosureIterator

    public Iterator getSubclassClosureIterator()

### getIdentityTable

    public Table getIdentityTable()

### getDirectSubclasses

    public Iterator getDirectSubclasses()

### addProperty

    public void addProperty(Property p)

### getTable

    public abstract Table getTable()

### getEntityName

    public String getEntityName()

### isMutable

    public abstract boolean isMutable()

### hasIdentifierProperty

    public abstract boolean hasIdentifierProperty()

### getIdentifierProperty

    public abstract Property getIdentifierProperty()

### getIdentifier

    public abstract KeyValue getIdentifier()

### getVersion

    public abstract Property getVersion()

### getDiscriminator

    public abstract Value getDiscriminator()

### isInherited

    public abstract boolean isInherited()

### isPolymorphic

    public abstract boolean isPolymorphic()

### isVersioned

    public abstract boolean isVersioned()

### getCacheConcurrencyStrategy

    public abstract String getCacheConcurrencyStrategy()

### getSuperclass

    public abstract PersistentClass getSuperclass()

### isExplicitPolymorphism

    public abstract boolean isExplicitPolymorphism()

### isDiscriminatorInsertable

    public abstract boolean isDiscriminatorInsertable()

### getPropertyClosureIterator

    public abstract Iterator getPropertyClosureIterator()

### getTableClosureIterator

    public abstract Iterator getTableClosureIterator()

### getKeyClosureIterator

    public abstract Iterator getKeyClosureIterator()

### addSubclassProperty

    protected void addSubclassProperty(Property prop)

### addSubclassJoin

    protected void addSubclassJoin(Join join)

### addSubclassTable

    protected void addSubclassTable(Table subclassTable)

### getSubclassPropertyClosureIterator

    public Iterator getSubclassPropertyClosureIterator()

### getSubclassJoinClosureIterator

    public Iterator getSubclassJoinClosureIterator()

### getSubclassTableClosureIterator

    public Iterator getSubclassTableClosureIterator()

### isClassOrSuperclassJoin

    public boolean isClassOrSuperclassJoin(Join join)

### isClassOrSuperclassTable

    public boolean isClassOrSuperclassTable(Table closureTable)

### isLazy

    public boolean isLazy()

### setLazy

    public void setLazy(boolean lazy)

### hasEmbeddedIdentifier

    public abstract boolean hasEmbeddedIdentifier()

### getEntityPersisterClass

    public abstract Class getEntityPersisterClass()

### setEntityPersisterClass

    public abstract void setEntityPersisterClass(Class classPersisterClass)

### getRootTable

    public abstract Table getRootTable()

### getRootClass

    public abstract RootClass getRootClass()

### getKey

    public abstract KeyValue getKey()

### setDiscriminatorValue

    public void setDiscriminatorValue(String discriminatorValue)

### setEntityName

    public void setEntityName(String entityName)

### createPrimaryKey

    public void createPrimaryKey()

### getWhere

    public abstract String getWhere()

### getBatchSize

    public int getBatchSize()

### setBatchSize

    public void setBatchSize(int batchSize)

### hasSelectBeforeUpdate

    public boolean hasSelectBeforeUpdate()

### setSelectBeforeUpdate

    public void setSelectBeforeUpdate(boolean selectBeforeUpdate)

### getReferenceablePropertyIterator

    public Iterator getReferenceablePropertyIterator()

  Build an iterator of properties which are "referenceable".

  Returns:
    The property iterator.
  See Also:
    `for a discussion of "referenceable"`

### getReferencedProperty

    public Property getReferencedProperty(String propertyPath)
                                   throws MappingException

  Given a property path, locate the appropriate referenceable property reference.

  A referenceable property is a property which can be a target of a foreign-key mapping (an identifier or explcitly named in a property-ref).

  Parameters:
    `propertyPath` - The property path to resolve into a property reference.
  Returns:
    The property reference (never null).
  Throws:
    `MappingException` - If the property could not be found.

### getRecursiveProperty

    public Property getRecursiveProperty(String propertyPath)
                                  throws MappingException

  Throws:
    `MappingException`

### getProperty

    public Property getProperty(String propertyName)
                         throws MappingException

  Throws:
    `MappingException`

### getOptimisticLockMode

    public abstract int getOptimisticLockMode()

### setOptimisticLockMode

    public void setOptimisticLockMode(int optimisticLockMode)

### validate

    public void validate(Mapping mapping)
                  throws MappingException

  Throws:
    `MappingException`

### isDiscriminatorValueNotNull

    public boolean isDiscriminatorValueNotNull()

### isDiscriminatorValueNull

    public boolean isDiscriminatorValueNull()

### getMetaAttributes

    public Map getMetaAttributes()

  Specified by:
    `getMetaAttributes` in interface `MetaAttributable`

### setMetaAttributes

    public void setMetaAttributes(Map metas)

  Specified by:
    `setMetaAttributes` in interface `MetaAttributable`

### getMetaAttribute

    public MetaAttribute getMetaAttribute(String name)

  Specified by:
    `getMetaAttribute` in interface `MetaAttributable`

### toString

    public String toString()

  Overrides:
    `toString` in class `Object`

### getJoinIterator

    public Iterator getJoinIterator()

### getJoinClosureIterator

    public Iterator getJoinClosureIterator()

### addJoin

    public void addJoin(Join join)

### getJoinClosureSpan

    public int getJoinClosureSpan()

### getPropertyClosureSpan

    public int getPropertyClosureSpan()

### getJoinNumber

    public int getJoinNumber(Property prop)

### getPropertyIterator

    public Iterator getPropertyIterator()

  Build an iterator over the properties defined on this class. The returned iterator only accounts for "normal" properties (i.e. non-identifier properties).

  Differs from `getUnjoinedPropertyIterator()` in that the iterator we return here will include properties defined as part of a join.

  Returns:
    An iterator over the "normal" properties.

### getUnjoinedPropertyIterator

    public Iterator getUnjoinedPropertyIterator()

  Build an iterator over the properties defined on this class which are not defined as part of a join. As with `getPropertyIterator()`, the returned iterator only accounts for non-identifier properties.

  Returns:
    An iterator over the non-joined "normal" properties.

### setCustomSQLInsert

    public void setCustomSQLInsert(String customSQLInsert,
                                   boolean callable,
                                   ExecuteUpdateResultCheckStyle checkStyle)

### getCustomSQLInsert

    public String getCustomSQLInsert()

### isCustomInsertCallable

    public boolean isCustomInsertCallable()

### getCustomSQLInsertCheckStyle

    public ExecuteUpdateResultCheckStyle getCustomSQLInsertCheckStyle()

### setCustomSQLUpdate

    public void setCustomSQLUpdate(String customSQLUpdate,
                                   boolean callable,
                                   ExecuteUpdateResultCheckStyle checkStyle)

### getCustomSQLUpdate

    public String getCustomSQLUpdate()

### isCustomUpdateCallable

    public boolean isCustomUpdateCallable()

### getCustomSQLUpdateCheckStyle

    public ExecuteUpdateResultCheckStyle getCustomSQLUpdateCheckStyle()

### setCustomSQLDelete

    public void setCustomSQLDelete(String customSQLDelete,
                                   boolean callable,
                                   ExecuteUpdateResultCheckStyle checkStyle)

### getCustomSQLDelete

    public String getCustomSQLDelete()

### isCustomDeleteCallable

    public boolean isCustomDeleteCallable()

### getCustomSQLDeleteCheckStyle

    public ExecuteUpdateResultCheckStyle getCustomSQLDeleteCheckStyle()

### addFilter

    public void addFilter(String name,
                          String condition)

  Specified by:
    `addFilter` in interface `Filterable`

### getFilterMap

    public Map getFilterMap()

  Specified by:
    `getFilterMap` in interface `Filterable`

### isForceDiscriminator

    public boolean isForceDiscriminator()

### isJoinedSubclass

    public abstract boolean isJoinedSubclass()

### getLoaderName

    public String getLoaderName()

### setLoaderName

    public void setLoaderName(String loaderName)

### getSynchronizedTables

    public abstract Set getSynchronizedTables()

### addSynchronizedTable

    public void addSynchronizedTable(String table)

### isAbstract

    public Boolean isAbstract()

### setAbstract

    public void setAbstract(Boolean isAbstract)

### checkColumnDuplication

    protected void checkColumnDuplication(Set distinctColumns,
                                          Iterator columns)
                                   throws MappingException

  Throws:
    `MappingException`

### checkPropertyColumnDuplication

    protected void checkPropertyColumnDuplication(Set distinctColumns,
                                                  Iterator properties)
                                           throws MappingException

  Throws:
    `MappingException`

### getNonDuplicatedPropertyIterator

    protected Iterator getNonDuplicatedPropertyIterator()

### getDiscriminatorColumnIterator

    protected Iterator getDiscriminatorColumnIterator()

### checkColumnDuplication

    protected void checkColumnDuplication()

### accept

    public abstract Object accept(PersistentClassVisitor mv)

### getNodeName

    public String getNodeName()

### setNodeName

    public void setNodeName(String nodeName)

### hasPojoRepresentation

    public boolean hasPojoRepresentation()

### hasDom4jRepresentation

    public boolean hasDom4jRepresentation()

### hasSubselectLoadableCollections

    public boolean hasSubselectLoadableCollections()

### setSubselectLoadableCollections

    public void setSubselectLoadableCollections(boolean hasSubselectCollections)

### prepareTemporaryTables

    public void prepareTemporaryTables(Mapping mapping,
                                       Dialect dialect)

### getTemporaryIdTableName

    public String getTemporaryIdTableName()

### getTemporaryIdTableDDL

    public String getTemporaryIdTableDDL()

### getIdentifierMapper

    public Component getIdentifierMapper()

### hasIdentifierMapper

    public boolean hasIdentifierMapper()

### setIdentifierMapper

    public void setIdentifierMapper(Component handle)

### addTuplizer

    public void addTuplizer(EntityMode entityMode,
                            String implClassName)

### getTuplizerImplClassName

    public String getTuplizerImplClassName(EntityMode mode)

### getTuplizerMap

    public Map getTuplizerMap()

### hasNaturalId

    public boolean hasNaturalId()

### isLazyPropertiesCacheable

    public abstract boolean isLazyPropertiesCacheable()

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD