Class AggregateFunctionStateObject

    • Field Detail

      • DISTINCT_PROPERTY

        public static final java.lang.String DISTINCT_PROPERTY
        Notifies the visibility of the DISTINCT identifier has changed.
        See Also:
        Constant Field Values
    • Constructor Detail

      • AggregateFunctionStateObject

        protected AggregateFunctionStateObject​(StateObject parent)
        Creates a new AggregateFunctionStateObject.
        Parameters:
        parent - The parent of this state object, which cannot be null
        Throws:
        java.lang.NullPointerException - The given parent cannot be null
      • AggregateFunctionStateObject

        protected AggregateFunctionStateObject​(StateObject parent,
                                               boolean distinct,
                                               StateObject stateObject)
        Creates a new AggregateStateObject.
        Parameters:
        parent - The parent of this state object, which cannot be null
        distinct - true to add DISTINCT to the query in order to have distinct values; false if it is not required
        stateObject - The StateObject representing the encapsulated expression
        Throws:
        java.lang.NullPointerException - The given parent cannot be null
      • AggregateFunctionStateObject

        protected AggregateFunctionStateObject​(StateObject parent,
                                               boolean distinct,
                                               java.lang.String path)
        Creates a new AggregateFunctionStateObject.
        Parameters:
        parent - The parent of this state object, which cannot be null
        distinct - true to add DISTINCT to the query in order to have distinct values; false if it is not required
        path - Either the identification variable or the state field path expression
        Throws:
        java.lang.NullPointerException - The given parent cannot be null
      • AggregateFunctionStateObject

        protected AggregateFunctionStateObject​(StateObject parent,
                                               StateObject stateObject)
        Creates a new AggregateStateObject.
        Parameters:
        parent - The parent of this state object, which cannot be null
        stateObject - The StateObject representing the encapsulated expression
        Throws:
        java.lang.NullPointerException - The given parent cannot be null
      • AggregateFunctionStateObject

        protected AggregateFunctionStateObject​(StateObject parent,
                                               java.lang.String path)
        Creates a new AggregateFunctionStateObject.
        Parameters:
        parent - The parent of this state object, which cannot be null
        path - Either the identification variable or the state field path expression
        Throws:
        java.lang.NullPointerException - The given parent cannot be null
    • Method Detail

      • hasDistinct

        public boolean hasDistinct()
        Sets whether the DISTINCT keyword should be part of the query, which is used to return only distinct (different) values.
        Returns:
        true to add DISTINCT to the query in order to have distinct values; false if it is not required
      • setDistinct

        public void setDistinct​(boolean distinct)
        Sets whether the DISTINCT keyword should be part of the query, which is used to return only distinct (different) values
        Parameters:
        distinct - true to add DISTINCT to the query in order to have distinct values; false if it is not required
      • toggleDistinct

        public void toggleDistinct()
        Reverses the visibility of the DISTINCT identifier.
      • toTextEncapsulatedExpression

        protected void toTextEncapsulatedExpression​(java.lang.Appendable writer)
                                             throws java.io.IOException
        Prints out a string representation of this encapsulated information, which should not be used to define a true string representation of a JPQL query but should be used for debugging purposes.
        Overrides:
        toTextEncapsulatedExpression in class AbstractSingleEncapsulatedExpressionStateObject
        Parameters:
        writer - The writer used to print out the string representation of the encapsulated information
        Throws:
        java.io.IOException - This should never happens, only required because Appendable is used instead of StringBuilder for instance