Interface TupleSubsetResultTransformer

  • All Superinterfaces:
    ResultTransformer, java.io.Serializable
    All Known Implementing Classes:
    AliasedTupleSubsetResultTransformer, AliasToBeanResultTransformer, AliasToEntityMapResultTransformer, DistinctRootEntityResultTransformer, PassThroughResultTransformer, RootEntityResultTransformer

    public interface TupleSubsetResultTransformer
    extends ResultTransformer
    A ResultTransformer that operates on "well-defined" and consistent subset of a tuple's elements. "Well-defined" means that:
    1. the indexes of tuple elements accessed by a TupleSubsetResultTransformer depends only on the aliases and the number of elements in the tuple; i.e, it does not depend on the value of the tuple being transformed;
    2. any tuple elements included in the transformed value are unmodified by the transformation;
    3. transforming equivalent tuples with the same aliases multiple times results in transformed values that are equivalent;
    4. the result of transforming the tuple subset (only those elements accessed by the transformer) using only the corresponding aliases is equivalent to transforming the full tuple with the full array of aliases;
    5. the result of transforming a tuple with non-accessed tuple elements and corresponding aliases set to null is equivalent to transforming the full tuple with the full array of aliases;
    • Method Detail

      • isTransformedValueATupleElement

        boolean isTransformedValueATupleElement​(java.lang.String[] aliases,
                                                int tupleLength)
        When a tuple is transformed, is the result a single element of the tuple?
        Parameters:
        aliases - - the aliases that correspond to the tuple
        tupleLength - - the number of elements in the tuple
        Returns:
        true, if the transformed value is a single element of the tuple; false, otherwise.
      • includeInTransform

        boolean[] includeInTransform​(java.lang.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.
        Parameters:
        aliases - - the aliases that correspond to the tuple
        tupleLength - - 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.