com.atlassian.jira.plugin.jql.function
Class AbstractVersionsFunction
java.lang.Object
com.atlassian.jira.plugin.jql.function.AbstractJqlFunction
com.atlassian.jira.plugin.jql.function.AbstractVersionsFunction
- All Implemented Interfaces:
- ClauseSanitisingJqlFunction, JqlFunction
- Direct Known Subclasses:
- AllReleasedVersionsFunction, AllUnreleasedVersionsFunction
public abstract class AbstractVersionsFunction
- extends AbstractJqlFunction
- implements ClauseSanitisingJqlFunction
An abstract class for the versions system field flag functions
- Since:
- v4.0
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
projectIndexInfoResolver
protected final IndexInfoResolver<Project> projectIndexInfoResolver
AbstractVersionsFunction
public AbstractVersionsFunction(NameResolver<Project> projectResolver,
PermissionManager permissionManager)
validate
public MessageSet validate(User searcher,
FunctionOperand operand,
TerminalClause terminalClause)
- Description copied from interface:
JqlFunction
- Will validate the function operand's arguments and report back any errors.
- Specified by:
validate in interface JqlFunction
- Parameters:
searcher - the user performing the searchoperand - the operand to validateterminalClause - 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; never null.
getValues
public List<QueryLiteral> getValues(User searcher,
FunctionOperand operand,
TerminalClause terminalClause)
- Description copied from interface:
JqlFunction
Gets the unexpanded values provided by the user on input. This is the output values that will later be
transformed into index values.
For example, a function who returns all the released versions of a specified project should return
QueryLiterals representing the ids of those versions. For correctness,
always opt to return the most specific identifier for the object; if you can return either the id (which is stored
in the index) or a string name (that would require resolving to get the index value), choose the id.
- Specified by:
getValues in interface JqlFunction
- Parameters:
searcher - the user performing the searchoperand - the operand to get values fromterminalClause - the terminal clause that contains the operand
- Returns:
- a List of objects that represent this Operands raw values.
sanitiseOperand
public FunctionOperand sanitiseOperand(User searcher,
FunctionOperand operand)
- Description copied from interface:
ClauseSanitisingJqlFunction
- Sanitise a function operand for the specified user, so that information is not leaked.
- Specified by:
sanitiseOperand in interface ClauseSanitisingJqlFunction
- Parameters:
searcher - the user performing the searchoperand - the operand to sanitise; will only be sanitised if valid
- Returns:
- the sanitised operand; never null.
createIndexInfoResolver
protected IndexInfoResolver<Project> createIndexInfoResolver(NameResolver<Project> projectResolver)
getAllVersions
protected abstract Collection<Version> getAllVersions()
- Returns:
- all the versions relevant to this function.
getVersionsForProject
protected abstract Collection<Version> getVersionsForProject(Long projectId)
- Parameters:
projectId - the id of the Project which the versions belong to
- Returns:
- all the versions relevant to this function and the specified project
Copyright © 2002-2009 Atlassian. All Rights Reserved.