@NonInjectableComponent public abstract class IdIndexedSearchInputTransformer<T> extends Object implements SearchInputTransformer
Modifier and Type | Field and Description |
---|---|
protected FieldFlagOperandRegistry |
fieldFlagOperandRegistry |
protected IndexInfoResolver<T> |
indexInfoResolver |
protected JqlOperandResolver |
operandResolver |
Constructor and Description |
---|
IdIndexedSearchInputTransformer(ClauseNames id,
IndexInfoResolver<T> indexInfoResolver,
JqlOperandResolver operandResolver,
FieldFlagOperandRegistry fieldFlagOperandRegistry) |
IdIndexedSearchInputTransformer(ClauseNames clauseNames,
String urlParameterName,
IndexInfoResolver<T> indexInfoResolver,
JqlOperandResolver operandResolver,
FieldFlagOperandRegistry fieldFlagOperandRegistry) |
Modifier and Type | Method and Description |
---|---|
boolean |
doRelevantClausesFitFilterForm(ApplicationUser user,
Query query,
SearchContext searchContext)
Tells the caller whether or not the relevant clauses from the passed query can be represented on the issue
navigator.
|
protected DefaultIndexedInputHelper |
getDefaultIndexedInputHelper() |
protected IndexedInputHelper |
getIndexedInputHelper() |
Clause |
getSearchClause(ApplicationUser user,
FieldValuesHolder fieldValuesHolder)
For this implementation we expect that the fieldValuesHolder will contain a list of
strings or nothing at all, if not then this will throw an exception.
|
void |
populateFromParams(ApplicationUser user,
FieldValuesHolder fieldValuesHolder,
ActionParams actionParams)
Populate
FieldValuesHolder object with whatever values the searcher is interested in from the
ActionParams . |
void |
populateFromQuery(ApplicationUser user,
FieldValuesHolder fieldValuesHolder,
Query query,
SearchContext searchContext)
This method transforms any query information contained in the query that is relevant to this
SearchInputTransformer into the values that the HTML rendering expects.
|
void |
validateParams(ApplicationUser user,
SearchContext searchContext,
FieldValuesHolder fieldValuesHolder,
I18nHelper i18nHelper,
ErrorCollection errors)
Adds error messages to the errors object if values in the fieldValuesHolder fails validation.
|
protected final FieldFlagOperandRegistry fieldFlagOperandRegistry
protected final JqlOperandResolver operandResolver
protected final IndexInfoResolver<T> indexInfoResolver
public IdIndexedSearchInputTransformer(ClauseNames id, IndexInfoResolver<T> indexInfoResolver, JqlOperandResolver operandResolver, FieldFlagOperandRegistry fieldFlagOperandRegistry)
public IdIndexedSearchInputTransformer(ClauseNames clauseNames, String urlParameterName, IndexInfoResolver<T> indexInfoResolver, JqlOperandResolver operandResolver, FieldFlagOperandRegistry fieldFlagOperandRegistry)
public void populateFromParams(ApplicationUser user, FieldValuesHolder fieldValuesHolder, ActionParams actionParams)
SearchInputTransformer
FieldValuesHolder
object with whatever values the searcher is interested in from the
ActionParams
. This transforms the "raw" request parameters
into a form that the other processing methods can handle (usually a mapping of the fields name as the key
and a list of the values as the value).populateFromParams
in interface SearchInputTransformer
user
- performing this action.fieldValuesHolder
- is the object that should have its values set by this method and that will contain
any other values that have been set by other SearchInputTransformers.actionParams
- params from the webwork front end that contains a String[] of values as submitted via thepublic void validateParams(ApplicationUser user, SearchContext searchContext, FieldValuesHolder fieldValuesHolder, I18nHelper i18nHelper, ErrorCollection errors)
SearchInputTransformer
validateParams
in interface SearchInputTransformer
user
- performing this action.searchContext
- the context of the search (i.e. projects and issue types selected).fieldValuesHolder
- contains values populated by the populate methods of this input transformer.i18nHelper
- used to internationalize error messages that we want to display to the users.errors
- the ErrorCollection that contains the messages we want to display to the users.public void populateFromQuery(ApplicationUser user, FieldValuesHolder fieldValuesHolder, Query query, SearchContext searchContext)
SearchInputTransformer
FieldValuesHolder
from the a query information in the
query.
SearchInputTransformer.getSearchClause(ApplicationUser, com.atlassian.jira.issue.transport.FieldValuesHolder)
method.populateFromQuery
in interface SearchInputTransformer
user
- performing this action.fieldValuesHolder
- is the object that should have its values set by this method and that will contain
any other values that have been set by other SearchInputTransformers.query
- the search criteria used to populate the field values holder.searchContext
- contains the projects and issue types that the search and filter form is restricted topublic boolean doRelevantClausesFitFilterForm(ApplicationUser user, Query query, SearchContext searchContext)
SearchInputTransformer
The method should only be concerned with the clauses related to this transformer. Other irrelevant clauses should be ignored.
doRelevantClausesFitFilterForm
in interface SearchInputTransformer
user
- performing this action.query
- to check if it can fit in the simple (GUI form based) issue navigator.searchContext
- contains the projects and issue types that the search and filter form is restricted topublic Clause getSearchClause(ApplicationUser user, FieldValuesHolder fieldValuesHolder)
getSearchClause
in interface SearchInputTransformer
user
- the user performing the searchfieldValuesHolder
- contains values populated by the searchersIllegalArgumentException
- if the value in the field values holder keyed by the
searcher id is not a list that contains strings.protected DefaultIndexedInputHelper getDefaultIndexedInputHelper()
DefaultIndexedInputHelper
alwaysprotected IndexedInputHelper getIndexedInputHelper()
IndexedInputHelper
which might be specialised for this particular searcherCopyright © 2002-2017 Atlassian. All Rights Reserved.