public class ProjectionList extends Object implements EnhancedProjection
Modifier | Constructor and Description |
---|---|
protected |
ProjectionList()
Constructs a ProjectionList
|
Modifier and Type | Method and Description |
---|---|
ProjectionList |
add(Projection projection)
Add a projection to this list of projections
|
ProjectionList |
add(Projection projection,
String alias)
Adds a projection to this list of projections after wrapping it with an alias
|
ProjectionList |
create()
Deprecated.
an instance factory method does not make sense
|
String[] |
getAliases()
Get the criteria-level aliases for this projection (ie.
|
String[] |
getColumnAliases(int loc)
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
SELECT clause (
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery) . |
String[] |
getColumnAliases(int loc,
Criteria criteria,
CriteriaQuery criteriaQuery)
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
SELECT clause (
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery) . |
String[] |
getColumnAliases(String alias,
int loc)
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
SELECT clause (
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery) for a particular criteria-level alias. |
String[] |
getColumnAliases(String alias,
int loc,
Criteria criteria,
CriteriaQuery criteriaQuery)
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
SELECT clause (
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery) for a particular criteria-level alias. |
int |
getLength() |
Projection |
getProjection(int i)
Access a wrapped projection by index
|
Type[] |
getTypes(Criteria criteria,
CriteriaQuery criteriaQuery)
Types returned by the rendered SQL
fragment . |
Type[] |
getTypes(String alias,
Criteria criteria,
CriteriaQuery criteriaQuery)
Get the return types for a particular user-visible alias.
|
boolean |
isGrouped()
Is this projection fragment (SELECT clause) also part of the GROUP BY
|
String |
toGroupSqlString(Criteria criteria,
CriteriaQuery criteriaQuery)
Render the SQL fragment to be used in the GROUP BY clause
|
String |
toSqlString(Criteria criteria,
int loc,
CriteriaQuery criteriaQuery)
Render the SQL fragment to be used in the SELECT clause.
|
String |
toString() |
protected ProjectionList()
Projections.projectionList()
@Deprecated public ProjectionList create()
Projections.projectionList()
public ProjectionList add(Projection projection)
projection
- The projection to addthis
, for method chainingpublic ProjectionList add(Projection projection, String alias)
projection
- The projection to addalias
- The alias to apply to the projectionthis
, for method chainingProjections.alias(org.hibernate.criterion.Projection, java.lang.String)
public boolean isGrouped()
Projection
isGrouped
in interface Projection
public Type[] getTypes(Criteria criteria, CriteriaQuery criteriaQuery) throws HibernateException
Projection
fragment
. In other words what are the types
that would represent the values this projection asked to be pulled into the result set?getTypes
in interface Projection
criteria
- The local criteria to which this project is attached (for resolution).criteriaQuery
- The overall criteria query instance.HibernateException
- Indicates a problem resolving the typespublic String toSqlString(Criteria criteria, int loc, CriteriaQuery criteriaQuery) throws HibernateException
Projection
toSqlString
in interface Projection
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.HibernateException
- Indicates a problem performing the renderingpublic String toGroupSqlString(Criteria criteria, CriteriaQuery criteriaQuery) throws HibernateException
Projection
toGroupSqlString
in interface Projection
criteria
- The local criteria to which this project is attached (for resolution).criteriaQuery
- The overall criteria query instance.HibernateException
- Indicates a problem performing the renderingpublic String[] getColumnAliases(int loc)
Projection
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
. Hibernate always uses column aliases to extract data from the
JDBC ResultSet
, so it is important that these be implemented correctly in order for
Hibernate to be able to extract these val;ues correctly.getColumnAliases
in interface Projection
loc
- Just as in Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
, represents the number of columns rendered
prior to this projection.public String[] getColumnAliases(int loc, Criteria criteria, CriteriaQuery criteriaQuery)
EnhancedProjection
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
. Hibernate always uses column aliases to extract data from the
JDBC ResultSet
, so it is important that these be implemented correctly in order for
Hibernate to be able to extract these val;ues correctly.getColumnAliases
in interface EnhancedProjection
loc
- Just as in Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
, represents the number of columns rendered
prior to this projection.criteria
- The local criteria to which this project is attached (for resolution).criteriaQuery
- The overall criteria query instance.public String[] getColumnAliases(String alias, int loc)
Projection
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
for a particular criteria-level alias.getColumnAliases
in interface Projection
alias
- The criteria-level aliasloc
- Just as in Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
, represents the number of columns rendered
prior to this projection.public String[] getColumnAliases(String alias, int loc, Criteria criteria, CriteriaQuery criteriaQuery)
EnhancedProjection
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
for a particular criteria-level alias.getColumnAliases
in interface EnhancedProjection
alias
- The criteria-level aliasloc
- Just as in Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
, represents the number of columns rendered
prior to this projection.criteria
- The local criteria to which this project is attached (for resolution).criteriaQuery
- The overall criteria query instance.public Type[] getTypes(String alias, Criteria criteria, CriteriaQuery criteriaQuery)
Projection
Projection.getTypes(org.hibernate.Criteria, CriteriaQuery)
in that here we are only interested in
the types related to the given criteria-level alias.getTypes
in interface Projection
alias
- The criteria-level alias for which to find types.criteria
- The local criteria to which this project is attached (for resolution).criteriaQuery
- The overall criteria query instance.public String[] getAliases()
Projection
ResultTransformer
)getAliases
in interface Projection
public Projection getProjection(int i)
i
- The index of the projection to returnpublic int getLength()
Copyright © 2016 JBoss by Red Hat. All rights reserved.