Class SetOperationFlag

java.lang.Object
com.querydsl.core.QueryFlag
com.blazebit.persistence.querydsl.SetOperationFlag
All Implemented Interfaces:
Serializable

public class SetOperationFlag extends com.querydsl.core.QueryFlag
A special type of QueryFlag that indicates that a subquery represents a set operation.
Since:
1.5.0
Author:
Jan-Willem Gmelig Meyling
See Also:
API Note:
In ProjectableSQLQuery, the union operation, if any, is stored in a field inside the query. If the query is a union operator, the subquery node represents itself as the set operation operation node opon visiting. However, due to this way, a visitor can't access the QueryMetadata of the SubQueryExpression of the set operation, which is necessairy for determining the QueryModifiers and order specifiers in subqueries. As a result, we decided to take a different approach and model set operation in a query flag instead. This allows visitors to visit the subquery as-is, and decide how they want to handle the set operation within the query flag.
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.querydsl.core.QueryFlag

    com.querydsl.core.QueryFlag.Position
  • Constructor Summary

    Constructors
    Constructor
    Description
    SetOperationFlag(com.querydsl.core.types.Expression<?> flag)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    getSetOperationFlag(com.querydsl.core.QueryMetadata queryMetadata)
     

    Methods inherited from class com.querydsl.core.QueryFlag

    equals, getFlag, getPosition, hashCode, toString

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • SetOperationFlag

      public SetOperationFlag(com.querydsl.core.types.Expression<?> flag)
  • Method Details

    • getSetOperationFlag

      public static SetOperationFlag getSetOperationFlag(com.querydsl.core.QueryMetadata queryMetadata)