public interface

OperandHandler

com.atlassian.jira.jql.operand.OperandHandler<T extends com.atlassian.query.operand.Operand>
Known Indirect Subclasses

Class Overview

Knows how to perform validation on and get expanded values from Operands.

Summary

Public Methods
List<QueryLiteral> getValues(QueryCreationContext queryCreationContext, T operand, TerminalClause terminalClause)
Gets the unexpanded values provided by the user on input.
boolean isEmpty()
boolean isFunction()
boolean isList()
MessageSet validate(ApplicationUser searcher, T operand, TerminalClause terminalClause)
Will perform operand specific validation.

Public Methods

public List<QueryLiteral> getValues (QueryCreationContext queryCreationContext, T operand, TerminalClause terminalClause)

Gets the unexpanded values provided by the user on input. In the case of a function this is the output values that will later be transformed into index values.

Parameters
queryCreationContext the context of query creation
operand the operand to get values from
terminalClause the terminal clause that contains the operand
Returns
  • a List of objects that represent this Operands raw values. This must be the values specified by the user.

public boolean isEmpty ()

Returns
  • true if the operand represents the absence of a value, false otherwise.

public boolean isFunction ()

Returns
  • true if the operand represents a function, false otherwise.

public boolean isList ()

Returns
  • true if the operand represents a list of values, false otherwise.

public MessageSet validate (ApplicationUser searcher, T operand, TerminalClause terminalClause)

Will perform operand specific validation.

Parameters
searcher the user performing the search
operand the operand to validate
terminalClause the terminal clause that contains the operand
Returns
  • a MessageSet which will contain any validation errors or warnings or will be empty if there is nothing to report, must not be null.