Save This Page
Home » hibernate-distribution-3.3.1.GA-dist » org.hibernate » persister » entity » [javadoc | source]
org.hibernate.persister.entity
public interface: Queryable [javadoc | source]

All Implemented Interfaces:
    Loadable, Joinable, PropertyMapping

All Known Implementing Classes:
    SingleTableEntityPersister, AbstractEntityPersister, JoinedSubclassEntityPersister, UnionSubclassEntityPersister, BasicEntityPersister

Extends the generic EntityPersister contract to add operations required by the Hibernate Query Language
Nested Class Summary:
public static class  Queryable.Declarer   
Method from org.hibernate.persister.entity.Queryable Summary:
generateFilterConditionAlias,   getConstraintOrderedTableNameClosure,   getContraintOrderedTableKeyColumnClosure,   getDiscriminatorSQLValue,   getIdentifierColumnNames,   getMappedSuperclass,   getSubclassPropertyDeclarer,   getSubclassPropertyTableNumber,   getSubclassTableName,   getTemporaryIdTableDDL,   getTemporaryIdTableName,   identifierSelectFragment,   isAbstract,   isExplicitPolymorphism,   isMultiTable,   isVersionPropertyInsertable,   propertySelectFragment
Method from org.hibernate.persister.entity.Queryable Detail:
 public String generateFilterConditionAlias(String rootAlias)
    The alias used for any filter conditions (mapped where-fragments or enabled-filters).

    This may or may not be different from the root alias depending upon the inheritence mapping strategy.
 public String[] getConstraintOrderedTableNameClosure()
    Get the names of all tables used in the hierarchy (up and down) ordered such that deletes in the given order would not cause contraint violations.
 public String[][] getContraintOrderedTableKeyColumnClosure()
 public String getDiscriminatorSQLValue()
    Get the discriminator value for this particular concrete subclass, as a string that may be embedded in a select statement
 public String[] getIdentifierColumnNames()
    Get the names of columns used to persist the identifier
 public String getMappedSuperclass()
    Get the class that this class is mapped as a subclass of - not necessarily the direct superclass
 public Queryable.Declarer getSubclassPropertyDeclarer(String propertyPath)
    Determine whether the given property is declared by our mapped class, our super class, or one of our subclasses...

    Note: the method is called 'subclass property...' simply for consistency sake (e.g. #getSubclassPropertyTableNumber

 public int getSubclassPropertyTableNumber(String propertyPath)
    Given a property name, determine the number of the table which contains the column to which this property is mapped.

    Note that this is not relative to the results from #getConstraintOrderedTableNameClosure() . It is relative to the subclass table name closure maintained internal to the persister (yick!). It is also relative to the indexing used to resolve #getSubclassTableName ...

 public String getSubclassTableName(int number)
    Get the name of the table with the given index from the internal array.
 public String getTemporaryIdTableDDL()
    Get the appropriate DDL command for generating the temporary table to be used to (potentially) store id values when performing bulk update/deletes.
 public String getTemporaryIdTableName()
    Get the name of the temporary table to be used to (potentially) store id values when performing bulk update/deletes.
 public String identifierSelectFragment(String name,
    String suffix)
    Given a query alias and an identifying suffix, render the intentifier select fragment.
 public boolean isAbstract()
    Is this an abstract class?
 public boolean isExplicitPolymorphism()
    Is this class explicit polymorphism only?
 public boolean isMultiTable()
    Is the inheritence hierarchy described by this persister contained across multiple tables?
 public boolean isVersionPropertyInsertable()
    Is the version property included in insert statements?
 public String propertySelectFragment(String alias,
    String suffix,
    boolean allProperties)
    Given a query alias and an identifying suffix, render the property select fragment.