Class ActualValueEqualityQueryFactory

java.lang.Object
com.atlassian.jira.search.jql.ActualValueEqualityQueryFactory
All Implemented Interfaces:
OperatorSpecificQueryFactory

public class ActualValueEqualityQueryFactory extends Object implements OperatorSpecificQueryFactory
Creates equality queries for clauses whose value is exactly the same as the indexed value(e.g. votes and duration).
Since:
10.4
  • Constructor Details

    • ActualValueEqualityQueryFactory

      public ActualValueEqualityQueryFactory(IndexValueConverter indexValueConverter, String emptyIndexValue)
      Creates a Query Factory that represents Empty values with emptyIndexValue
      Parameters:
      indexValueConverter - used for converting query literals to the index representation
      emptyIndexValue - the value that is used to represent empty values in the index
    • ActualValueEqualityQueryFactory

      public ActualValueEqualityQueryFactory(IndexValueConverter indexValueConverter)
      Creates a Query Factory that does not have a specified representation of empty values and instead checks for the field value absence.
      Parameters:
      indexValueConverter - used for converting query literals to the index representation
  • Method Details

    • createQueryForSingleValue

      public Query createQueryForSingleValue(String fieldName, Operator operator, List<QueryLiteral> rawValues)
      Description copied from interface: OperatorSpecificQueryFactory
      Generates the query for a single operand id.
      Specified by:
      createQueryForSingleValue in interface OperatorSpecificQueryFactory
      Parameters:
      fieldName - the index field name the query should be generated for.
      operator - operator which is handled by this implementation.
      rawValues - a list of raw values associated with the operand. These values are converted into index-specific representations.
      Returns:
      the result that contains the query of type Query and its metadata.
    • createQueryForMultipleValues

      public Query createQueryForMultipleValues(String fieldName, Operator operator, List<QueryLiteral> rawValues)
      Description copied from interface: OperatorSpecificQueryFactory
      Generates the query for a list of operand ids.
      Specified by:
      createQueryForMultipleValues in interface OperatorSpecificQueryFactory
      Parameters:
      fieldName - the index field name the query should be generated for.
      operator - operator which is handled by this implementation.
      rawValues - a list of raw values associated with the operand. These values are converted into index-specific representations.
      Returns:
      the result that contains the query of type Query and its metadata.
    • createQueryForEmptyOperand

      public Query createQueryForEmptyOperand(String fieldName, Operator operator)
      Description copied from interface: OperatorSpecificQueryFactory
      Generates the query for an operand that supports EMPTY values.
      Specified by:
      createQueryForEmptyOperand in interface OperatorSpecificQueryFactory
      Parameters:
      fieldName - the index field name the query should be generated for.
      operator - operator which is handled by this implementation.
      Returns:
      the result that contains the query of type Query and its metadata.
    • handlesOperator

      public boolean handlesOperator(Operator operator)
      Specified by:
      handlesOperator in interface OperatorSpecificQueryFactory
      Returns:
      true if this implementation can handle the given operator, false otherwise.