org.hibernate.transform

Interface ResultTransformer

All Superinterfaces:
Serializable
Known Implementing Classes:
AliasToBeanConstructorResultTransformer, AliasToBeanResultTransformer, AliasToEntityMapResultTransformer, BasicTransformerAdapter, DistinctResultTransformer, DistinctRootEntityResultTransformer, PassThroughResultTransformer, RootEntityResultTransformer, ToListResultTransformer

public interface ResultTransformer
extends Serializable

Implementors define a strategy for transforming query results into the actual application-visible query result list.
Author:
Gavin King
See Also:
Criteria.setResultTransformer(ResultTransformer), Query.setResultTransformer(ResultTransformer)

Method Summary

List
transformList(List collection)
Here we have an opportunity to perform transformation on the query result as a whole.
Object
transformTuple(Object[] tuple, String[] aliases)
Tuples are the elements making up each "row" of the query result.

Method Details

transformList

public List transformList(List collection)
Here we have an opportunity to perform transformation on the query result as a whole. This might be useful to convert from one collection type to another or to remove duplicates from the result, etc.
Parameters:
collection - The result.
Returns:
The transformed result.

transformTuple

public Object transformTuple(Object[] tuple,
                             String[] aliases)
Tuples are the elements making up each "row" of the query result. The contract here is to transform these elements into the final row.
Parameters:
tuple - The result elements
aliases - The result aliases ("parallel" array to tuple)
Returns:
The transformed row.