|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectcom.atlassian.jira.plugin.jql.function.AbstractJqlFunction
com.atlassian.jira.plugin.jql.function.AbstractVersionsFunction
public abstract class AbstractVersionsFunction
An abstract class for the versions system field flag functions
| Field Summary | |
|---|---|
protected IndexInfoResolver<Project> |
projectIndexInfoResolver
|
| Constructor Summary | |
|---|---|
AbstractVersionsFunction(NameResolver<Project> projectResolver,
PermissionManager permissionManager)
|
|
| Method Summary | |
|---|---|
protected IndexInfoResolver<Project> |
createIndexInfoResolver(NameResolver<Project> projectResolver)
|
protected abstract Collection<Version> |
getAllVersions()
|
JiraDataType |
getDataType()
Provides the JiraDataType that this function handles and creates values for. |
int |
getMinimumNumberOfExpectedArguments()
This method must return the number of arguments that the function expects to perform its operation correctly. |
List<QueryLiteral> |
getValues(QueryCreationContext queryCreationContext,
FunctionOperand operand,
TerminalClause terminalClause)
Gets the unexpanded values provided by the user on input. |
protected abstract Collection<Version> |
getVersionsForProject(Long projectId)
|
FunctionOperand |
sanitiseOperand(com.atlassian.crowd.embedded.api.User searcher,
FunctionOperand operand)
Sanitise a function operand for the specified user, so that information is not leaked. |
MessageSet |
validate(com.atlassian.crowd.embedded.api.User searcher,
FunctionOperand operand,
TerminalClause terminalClause)
Will validate the function operand's arguments and report back any errors. |
| Methods inherited from class com.atlassian.jira.plugin.jql.function.AbstractJqlFunction |
|---|
getFunctionName, getI18n, getModuleDescriptor, init, isList, validateNumberOfArgs |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected final IndexInfoResolver<Project> projectIndexInfoResolver
| Constructor Detail |
|---|
public AbstractVersionsFunction(NameResolver<Project> projectResolver,
PermissionManager permissionManager)
| Method Detail |
|---|
public MessageSet validate(com.atlassian.crowd.embedded.api.User searcher,
FunctionOperand operand,
TerminalClause terminalClause)
JqlFunction
validate in interface JqlFunctionsearcher - the user performing the searchoperand - the operand to validateterminalClause - the terminal clause that contains the operand
public List<QueryLiteral> getValues(QueryCreationContext queryCreationContext,
FunctionOperand operand,
TerminalClause terminalClause)
JqlFunctionGets 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.
getValues in interface JqlFunctionqueryCreationContext - the context of query creationoperand - the operand to get values fromterminalClause - the terminal clause that contains the operand
public FunctionOperand sanitiseOperand(com.atlassian.crowd.embedded.api.User searcher,
FunctionOperand operand)
ClauseSanitisingJqlFunction
sanitiseOperand in interface ClauseSanitisingJqlFunctionsearcher - the user performing the searchoperand - the operand to sanitise; will only be sanitised if valid
public int getMinimumNumberOfExpectedArguments()
JqlFunction
getMinimumNumberOfExpectedArguments in interface JqlFunctionpublic JiraDataType getDataType()
JqlFunctionJiraDataType that this function handles and creates values for. This
allows us to infer some information about how it will interact with other elements in the system.
For example, if this returns JiraDataTypes.DATE then we know that we can provide
values for any clauses that also specify a data type of DATE.
getDataType in interface JqlFunctionJiraDataTypesprotected IndexInfoResolver<Project> createIndexInfoResolver(NameResolver<Project> projectResolver)
protected abstract Collection<Version> getAllVersions()
protected abstract Collection<Version> getVersionsForProject(Long projectId)
projectId - the id of the Project which the versions belong to
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||