org.hibernate.criterion

Interface Projection

All Superinterfaces:
Serializable
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(String alias, int loc)
Get the SQL select clause column aliases for a particular user-visible alias
String[]
getColumnAliases(int loc)
Get the SQL select clause column aliases
Type[]
getTypes(String alias, Criteria criteria, CriteriaQuery criteriaQuery)
Return types for a particular user-visible alias
Type[]
getTypes(Criteria criteria, CriteriaQuery criteriaQuery)
Return types returned by the rendered SQL fragment
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 Details

getAliases

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

getColumnAliases

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

getColumnAliases

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

getTypes

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

getTypes

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

isGrouped

public boolean isGrouped()
Does this projection specify grouping attributes?

toGroupSqlString

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

toSqlString

public String toSqlString(Criteria criteria,
                          int position,
                          CriteriaQuery criteriaQuery)
            throws HibernateException
Render the SQL fragment
Parameters:
criteriaQuery -
Returns:
String