org.hibernate.criterion
Interface Projection

All Superinterfaces:
Serializable
All Known Implementing Classes:
AggregateProjection, AliasedProjection, AvgProjection, CountProjection, Distinct, IdentifierProjection, ProjectionList, Property, PropertyProjection, RowCountProjection, SimpleProjection, SQLProjection

public interface Projection
extends Serializable

An object-oriented representation of a query result set projection in a Criteria query. Built-in projection types are provided by the Projections factory class. This interface might be implemented by application classes that define custom projections.

Author:
Gavin King
See Also:
Projections, Criteria

Method Summary
 String[] getAliases()
          Get the user-visible aliases for this projection (ie.
 String[] getColumnAliases(int loc)
          Get the SQL select clause column aliases
 String[] getColumnAliases(String alias, int loc)
          Get the SQL select clause column aliases for a particular user-visible alias
 Type[] getTypes(Criteria criteria, CriteriaQuery criteriaQuery)
          Return types returned by the rendered SQL fragment
 Type[] getTypes(String alias, Criteria criteria, CriteriaQuery criteriaQuery)
          Return types for a particular user-visible alias
 boolean isGrouped()
          Does this projection specify grouping attributes?
 String toGroupSqlString(Criteria criteria, CriteriaQuery criteriaQuery)
          Render the SQL fragment to be used in the group by clause
 String toSqlString(Criteria criteria, int position, CriteriaQuery criteriaQuery)
          Render the SQL fragment
 

Method Detail

toSqlString

String toSqlString(Criteria criteria,
                   int position,
                   CriteriaQuery criteriaQuery)
                   throws HibernateException
Render the SQL fragment

Parameters:
criteriaQuery -
columnAlias -
Returns:
String
Throws:
HibernateException

toGroupSqlString

String toGroupSqlString(Criteria criteria,
                        CriteriaQuery criteriaQuery)
                        throws HibernateException
Render the SQL fragment to be used in the group by clause

Parameters:
criteriaQuery -
columnAlias -
Returns:
String
Throws:
HibernateException

getTypes

Type[] getTypes(Criteria criteria,
                CriteriaQuery criteriaQuery)
                throws HibernateException
Return types returned by the rendered SQL fragment

Parameters:
criteria -
criteriaQuery -
Returns:
Type[]
Throws:
HibernateException

getTypes

Type[] getTypes(String alias,
                Criteria criteria,
                CriteriaQuery criteriaQuery)
                throws HibernateException
Return types for a particular user-visible alias

Throws:
HibernateException

getColumnAliases

String[] getColumnAliases(int loc)
Get the SQL select clause column aliases


getColumnAliases

String[] getColumnAliases(String alias,
                          int loc)
Get the SQL select clause column aliases for a particular user-visible alias


getAliases

String[] getAliases()
Get the user-visible aliases for this projection (ie. the ones that will be passed to the ResultTransformer)


isGrouped

boolean isGrouped()
Does this projection specify grouping attributes?