public abstract class AbstractUserBasedFunction extends AbstractJqlFunction
This function expects zero or one argument. If zero arguments are supplied the current logged in user will be used.
Modifier and Type | Field and Description |
---|---|
protected GlobalPermissionManager |
globalPermissionManager |
protected UserManager |
userManager |
Constructor and Description |
---|
AbstractUserBasedFunction(UserManager userManager,
GlobalPermissionManager globalPermissionManager) |
Modifier and Type | Method and Description |
---|---|
protected abstract List<QueryLiteral> |
getFunctionValuesList(QueryCreationContext queryCreationContext,
FunctionOperand operand,
ApplicationUser user)
Get the function return values based on the actual user.
|
protected MessageSet |
getMessageForDisallowedAnonymousAccess(I18nHelper i18n) |
int |
getMinimumNumberOfExpectedArguments()
This method must return the number of arguments that the function expects to perform its operation correctly.
|
protected abstract String |
getUserNotFoundMessageKey()
Get the I18n message key for the error when the passed in user does not exist.
|
List<QueryLiteral> |
getValues(QueryCreationContext queryCreationContext,
FunctionOperand functionOperand,
TerminalClause terminalClause)
Gets the unexpanded values provided by the user on input.
|
protected boolean |
isAnonymousAccessAllowed(FunctionOperand functionOperand) |
MessageSet |
validate(ApplicationUser searcher,
FunctionOperand functionOperand,
TerminalClause terminalClause)
Will validate the function operand's arguments and report back any errors.
|
protected MessageSet |
validateQuery(FunctionOperand functionOperand,
I18nHelper i18n) |
getFunctionName, getI18n, getModuleDescriptor, init, isList, validateNumberOfArgs
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getDataType
protected final UserManager userManager
protected final GlobalPermissionManager globalPermissionManager
public AbstractUserBasedFunction(UserManager userManager, GlobalPermissionManager globalPermissionManager)
@Nonnull public MessageSet validate(ApplicationUser searcher, FunctionOperand functionOperand, TerminalClause terminalClause)
JqlFunction
searcher
- the user performing the searchfunctionOperand
- the operand to validateterminalClause
- the terminal clause that contains the operandprotected boolean isAnonymousAccessAllowed(FunctionOperand functionOperand)
protected MessageSet getMessageForDisallowedAnonymousAccess(I18nHelper i18n)
protected MessageSet validateQuery(FunctionOperand functionOperand, I18nHelper i18n)
public int getMinimumNumberOfExpectedArguments()
JqlFunction
public List<QueryLiteral> getValues(QueryCreationContext queryCreationContext, FunctionOperand functionOperand, TerminalClause terminalClause)
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 QueryLiteral
s 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.
queryCreationContext
- the context of query creationfunctionOperand
- the operand to get values fromterminalClause
- the terminal clause that contains the operandprotected abstract List<QueryLiteral> getFunctionValuesList(QueryCreationContext queryCreationContext, FunctionOperand operand, ApplicationUser user)
queryCreationContext
- the context of query creationoperand
- the operand to get values fromuser
- the userprotected abstract String getUserNotFoundMessageKey()
Copyright © 2002-2024 Atlassian. All Rights Reserved.