Package org.hibernate.transform
Class DistinctRootEntityResultTransformer
- java.lang.Object
-
- org.hibernate.transform.DistinctRootEntityResultTransformer
-
- All Implemented Interfaces:
Serializable
,ResultTransformer
,TupleSubsetResultTransformer
public class DistinctRootEntityResultTransformer extends Object implements TupleSubsetResultTransformer
Much likeRootEntityResultTransformer
, but we also distinct the entity in the final result. Since this transformer is stateless, all instances would be considered equal. So for optimization purposes we limit it to a single, singletoninstance
.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static DistinctRootEntityResultTransformer
INSTANCE
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean[]
includeInTransform(String[] aliases, int tupleLength)
Returns an array with the i-th element indicating whether the i-th element of the tuple is included in the transformed value.boolean
isTransformedValueATupleElement(String[] aliases, int tupleLength)
When a tuple is transformed, is the result a single element of the tuple?List
transformList(List list)
Simply delegates toDistinctResultTransformer.transformList(java.util.List)
.Object
transformTuple(Object[] tuple, String[] aliases)
Simply delegates toRootEntityResultTransformer.transformTuple(java.lang.Object[], java.lang.String[])
.
-
-
-
Field Detail
-
INSTANCE
public static final DistinctRootEntityResultTransformer INSTANCE
-
-
Method Detail
-
transformTuple
public Object transformTuple(Object[] tuple, String[] aliases)
Simply delegates toRootEntityResultTransformer.transformTuple(java.lang.Object[], java.lang.String[])
.- Specified by:
transformTuple
in interfaceResultTransformer
- Parameters:
tuple
- The tuple to transformaliases
- The tuple aliases- Returns:
- The transformed tuple row.
-
transformList
public List transformList(List list)
Simply delegates toDistinctResultTransformer.transformList(java.util.List)
.- Specified by:
transformList
in interfaceResultTransformer
- Parameters:
list
- The list to transform.- Returns:
- The transformed List.
-
includeInTransform
public boolean[] includeInTransform(String[] aliases, int tupleLength)
Description copied from interface:TupleSubsetResultTransformer
Returns an array with the i-th element indicating whether the i-th element of the tuple is included in the transformed value.- Specified by:
includeInTransform
in interfaceTupleSubsetResultTransformer
- Parameters:
aliases
- - the aliases that correspond to the tupletupleLength
- - the number of elements in the tuple- Returns:
- array with the i-th element indicating whether the i-th element of the tuple is included in the transformed value.
-
isTransformedValueATupleElement
public boolean isTransformedValueATupleElement(String[] aliases, int tupleLength)
Description copied from interface:TupleSubsetResultTransformer
When a tuple is transformed, is the result a single element of the tuple?- Specified by:
isTransformedValueATupleElement
in interfaceTupleSubsetResultTransformer
- Parameters:
aliases
- - the aliases that correspond to the tupletupleLength
- - the number of elements in the tuple- Returns:
- true, if the transformed value is a single element of the tuple; false, otherwise.
-
-