com.atlassian.jira.issue.search.searchers.renderer
Class AbstractUserSearchRenderer

java.lang.Object
  extended by com.atlassian.jira.issue.search.searchers.renderer.AbstractSearchRenderer
      extended by com.atlassian.jira.issue.search.searchers.renderer.AbstractUserSearchRenderer
All Implemented Interfaces:
SearchRenderer
Direct Known Subclasses:
AssigneeSearchRenderer, CreatorSearchRenderer, ReporterSearchRenderer, UserPickerGroupCustomFieldRenderer

public abstract class AbstractUserSearchRenderer
extends AbstractSearchRenderer
implements SearchRenderer

An search renderer for the user fields.

Since:
v4.0

Field Summary
static String SELECT_LIST_GROUP
           
static String SELECT_LIST_NONE
           
static String SELECT_LIST_USER
           
protected  UserSearcherHelper userSearcherHelper
           
 
Fields inherited from class com.atlassian.jira.issue.search.searchers.renderer.AbstractSearchRenderer
EDIT_TEMPLATE_SUFFIX, VIEW_TEMPLATE_SUFFIX
 
Constructor Summary
AbstractUserSearchRenderer(UserFieldSearchConstants searchConstants, String nameKey, VelocityRequestContextFactory velocityRequestContextFactory, ApplicationProperties applicationProperties, VelocityTemplatingEngine templatingEngine, UserPickerSearchService searchService, UserManager userManager, UserUtil userUtil, GroupManager groupManager, PermissionManager permissionManager, UserHistoryManager userHistoryManager)
           
AbstractUserSearchRenderer(UserFieldSearchConstantsWithEmpty searchConstants, String nameKey, VelocityRequestContextFactory velocityRequestContextFactory, ApplicationProperties applicationProperties, VelocityTemplatingEngine templatingEngine, UserPickerSearchService searchService, UserManager userManager, UserUtil userUtil, GroupManager groupManager, PermissionManager permissionManager, UserHistoryManager userHistoryManager)
           
 
Method Summary
 String getEditHtml(com.atlassian.crowd.embedded.api.User user, SearchContext searchContext, FieldValuesHolder fieldValuesHolder, Map displayParameters, webwork.action.Action action)
          Used to produce an HTML input that is rendered on the JIRA issue navigator.
protected abstract  String getEmptyValueKey()
           
protected abstract  List<Map<String,String>> getSelectedListOptions(com.atlassian.crowd.embedded.api.User searcher)
           
protected  String getTextForuser(com.atlassian.crowd.embedded.api.User searcher, FieldValuesHolder fieldValuesHolder)
           
protected  Map<String,Object> getVelocityParams(com.atlassian.crowd.embedded.api.User searcher, SearchContext searchContext, FieldLayoutItem fieldLayoutItem, FieldValuesHolder fieldValuesHolder, Map displayParameters, webwork.action.Action action)
           
 String getViewHtml(com.atlassian.crowd.embedded.api.User user, SearchContext searchContext, FieldValuesHolder fieldValuesHolder, Map displayParameters, webwork.action.Action action)
          Used to produce the HTML that displays a searchers summary information (e.g.
 boolean isRelevantForQuery(com.atlassian.crowd.embedded.api.User user, Query query)
          Checks if the searchRequest object has a search representation that was created by the searcher and is used to determine if the SearchRenderer.getViewHtml(User, com.atlassian.jira.issue.search.SearchContext, com.atlassian.jira.issue.transport.FieldValuesHolder, java.util.Map, webwork.action.Action) method should be called when rendering the search summary.
 
Methods inherited from class com.atlassian.jira.issue.search.searchers.renderer.AbstractSearchRenderer
getI18n, isRelevantForQuery, renderEditTemplate, renderViewTemplate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.atlassian.jira.issue.search.searchers.renderer.SearchRenderer
isShown
 

Field Detail

SELECT_LIST_NONE

public static final String SELECT_LIST_NONE
See Also:
Constant Field Values

SELECT_LIST_USER

public static final String SELECT_LIST_USER
See Also:
Constant Field Values

SELECT_LIST_GROUP

public static final String SELECT_LIST_GROUP
See Also:
Constant Field Values

userSearcherHelper

protected UserSearcherHelper userSearcherHelper
Constructor Detail

AbstractUserSearchRenderer

public AbstractUserSearchRenderer(UserFieldSearchConstantsWithEmpty searchConstants,
                                  String nameKey,
                                  VelocityRequestContextFactory velocityRequestContextFactory,
                                  ApplicationProperties applicationProperties,
                                  VelocityTemplatingEngine templatingEngine,
                                  UserPickerSearchService searchService,
                                  UserManager userManager,
                                  UserUtil userUtil,
                                  GroupManager groupManager,
                                  PermissionManager permissionManager,
                                  UserHistoryManager userHistoryManager)

AbstractUserSearchRenderer

public AbstractUserSearchRenderer(UserFieldSearchConstants searchConstants,
                                  String nameKey,
                                  VelocityRequestContextFactory velocityRequestContextFactory,
                                  ApplicationProperties applicationProperties,
                                  VelocityTemplatingEngine templatingEngine,
                                  UserPickerSearchService searchService,
                                  UserManager userManager,
                                  UserUtil userUtil,
                                  GroupManager groupManager,
                                  PermissionManager permissionManager,
                                  UserHistoryManager userHistoryManager)
Method Detail

getEditHtml

public String getEditHtml(com.atlassian.crowd.embedded.api.User user,
                          SearchContext searchContext,
                          FieldValuesHolder fieldValuesHolder,
                          Map displayParameters,
                          webwork.action.Action action)
Description copied from interface: SearchRenderer
Used to produce an HTML input that is rendered on the JIRA issue navigator. This HTML provides the UI for searching a fields content. There will be a corresponding SearchInputTransformer that will know how to transform these input parameters into JIRA search objects.

Specified by:
getEditHtml in interface SearchRenderer
Parameters:
user - performing this action.
searchContext - the search context of the current search request that may be participating in rendering the issue navigator.
fieldValuesHolder - contains any request parameters that the HTML input may need to use to pre-populate the input (e.g. if this is the priority renderer and the search request being rendered has two priorities already selected these params will contain these request parameters). These parameters will have been populated via a call to SearchInputTransformer.populateFromQuery(User,com.atlassian.jira.issue.transport.FieldValuesHolder,com.atlassian.query.Query,com.atlassian.jira.issue.search.SearchContext) if there is a SearchRequest involved in the rendering this IssueNavigator call.
displayParameters - are a map of "hints" that can be passed from the caller to this code which can use these hints to alter the way it renders the HTML.
action - is the WebWork 1 action object that is rendering the Issue Navigator view. This can be used to invoke methods on the view.
Returns:
a String that contains HTML that can be rendered on the left-hand side of the JIRA issue navigator.

getViewHtml

public String getViewHtml(com.atlassian.crowd.embedded.api.User user,
                          SearchContext searchContext,
                          FieldValuesHolder fieldValuesHolder,
                          Map displayParameters,
                          webwork.action.Action action)
Description copied from interface: SearchRenderer
Used to produce the HTML that displays a searchers summary information (e.g. if this is the priority searcher and a user has selected two priorities then this method will render HTML that shows something like 'priority: Major, Minor').

Specified by:
getViewHtml in interface SearchRenderer
Parameters:
user - performing this action.
searchContext - the search context of the current search request that may be participating in rendering the issue navigator.
fieldValuesHolder - contains any request parameters that the HTML input may need to use to pre-populate the input (e.g. if this is the priority renderer and the search request being rendered has two priorities already selected these params will contain these request parameters). These parameters will have been populated via a call to SearchInputTransformer.populateFromQuery(User,com.atlassian.jira.issue.transport.FieldValuesHolder,com.atlassian.query.Query,com.atlassian.jira.issue.search.SearchContext) if there is a SearchRequest involved in the rendering this IssueNavigator call.
displayParameters - are a map of "hints" that can be passed from the caller to this code which can use these hints to alter the way it renders the HTML.
action - is the WebWork 1 action object that is rendering the Issue Navigator view. This can be used to invoke methods on the view.
Returns:
a String that contains HTML that can be rendered on the left-hand side of the issue navigator to show a SearchRequest summary.

isRelevantForQuery

public boolean isRelevantForQuery(com.atlassian.crowd.embedded.api.User user,
                                  Query query)
Description copied from interface: SearchRenderer
Checks if the searchRequest object has a search representation that was created by the searcher and is used to determine if the SearchRenderer.getViewHtml(User, com.atlassian.jira.issue.search.SearchContext, com.atlassian.jira.issue.transport.FieldValuesHolder, java.util.Map, webwork.action.Action) method should be called when rendering the search summary.

Specified by:
isRelevantForQuery in interface SearchRenderer
Parameters:
user - performing this action.
query - contains the search criteria used to determine if this query is relevevant to the searcher.
Returns:
true if the query has relevant clauses to the searchers, false otherwise.

getSelectedListOptions

protected abstract List<Map<String,String>> getSelectedListOptions(com.atlassian.crowd.embedded.api.User searcher)
Parameters:
searcher - performing the action.
Returns:
the select list options that are displayed for this user searcher (e.g. SpecificUser, CurrentUser...)

getEmptyValueKey

protected abstract String getEmptyValueKey()
Returns:
the i18n key for the text that describes an empty value for this searcher.

getTextForuser

protected String getTextForuser(com.atlassian.crowd.embedded.api.User searcher,
                                FieldValuesHolder fieldValuesHolder)

getVelocityParams

protected Map<String,Object> getVelocityParams(com.atlassian.crowd.embedded.api.User searcher,
                                               SearchContext searchContext,
                                               FieldLayoutItem fieldLayoutItem,
                                               FieldValuesHolder fieldValuesHolder,
                                               Map displayParameters,
                                               webwork.action.Action action)
Overrides:
getVelocityParams in class AbstractSearchRenderer


Copyright © 2002-2014 Atlassian. All Rights Reserved.