org.hibernate.criterion
Class AggregateProjection

java.lang.Object
  extended by org.hibernate.criterion.SimpleProjection
      extended by org.hibernate.criterion.AggregateProjection
All Implemented Interfaces:
java.io.Serializable, EnhancedProjection, Projection
Direct Known Subclasses:
AvgProjection, CountProjection

public class AggregateProjection
extends SimpleProjection

Base class for standard aggregation functions.

Author:
max
See Also:
Serialized Form

Field Summary
protected  java.lang.String propertyName
           
 
Constructor Summary
protected AggregateProjection(java.lang.String functionName, java.lang.String propertyName)
           
 
Method Summary
protected  java.util.List buildFunctionParameterList(Criteria criteria, CriteriaQuery criteriaQuery)
           
protected  java.util.List buildFunctionParameterList(java.lang.String column)
           
protected  SQLFunction getFunction(CriteriaQuery criteriaQuery)
           
protected  SQLFunction getFunction(java.lang.String functionName, CriteriaQuery criteriaQuery)
           
 java.lang.String getFunctionName()
           
 java.lang.String getPropertyName()
           
 Type[] getTypes(Criteria criteria, CriteriaQuery criteriaQuery)
          Types returned by the rendered SQL fragment.
 java.lang.String toSqlString(Criteria criteria, int loc, CriteriaQuery criteriaQuery)
          Render the SQL fragment to be used in the SELECT clause.
 java.lang.String toString()
           
 
Methods inherited from class org.hibernate.criterion.SimpleProjection
as, getAliases, getColumnAliases, getColumnAliases, getColumnAliases, getColumnAliases, getColumnCount, getTypes, isGrouped, toGroupSqlString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

propertyName

protected final java.lang.String propertyName
Constructor Detail

AggregateProjection

protected AggregateProjection(java.lang.String functionName,
                              java.lang.String propertyName)
Method Detail

getFunctionName

public java.lang.String getFunctionName()

getPropertyName

public java.lang.String getPropertyName()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getTypes

public Type[] getTypes(Criteria criteria,
                       CriteriaQuery criteriaQuery)
                throws HibernateException
Types returned by the rendered SQL fragment. In other words what are the types that would represent the values this projection asked to be pulled into the result set?

Parameters:
criteria - The local criteria to which this project is attached (for resolution).
criteriaQuery - The overall criteria query instance.
Returns:
The return types.
Throws:
HibernateException - Indicates a problem resolving the types

toSqlString

public java.lang.String toSqlString(Criteria criteria,
                                    int loc,
                                    CriteriaQuery criteriaQuery)
                             throws HibernateException
Render the SQL fragment to be used in the SELECT clause.

Parameters:
criteria - The local criteria to which this project is attached (for resolution).
loc - The number of columns rendered in the SELECT clause before this projection. Generally speaking this is useful to ensure uniqueness of the individual columns aliases.
criteriaQuery - The overall criteria query instance.
Returns:
The SQL fragment to plug into the SELECT
Throws:
HibernateException - Indicates a problem performing the rendering

getFunction

protected SQLFunction getFunction(CriteriaQuery criteriaQuery)

getFunction

protected SQLFunction getFunction(java.lang.String functionName,
                                  CriteriaQuery criteriaQuery)

buildFunctionParameterList

protected java.util.List buildFunctionParameterList(Criteria criteria,
                                                    CriteriaQuery criteriaQuery)

buildFunctionParameterList

protected java.util.List buildFunctionParameterList(java.lang.String column)


Copyright © 2012. All Rights Reserved.