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:
Serialized Form
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
    static SetOperationFlag 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