com.atlassian.jira.web.action.issue
Class IssueNavigator

java.lang.Object
  extended by webwork.action.ActionSupport
      extended by com.atlassian.jira.action.JiraActionSupport
          extended by com.atlassian.jira.web.action.JiraWebActionSupport
              extended by com.atlassian.jira.web.action.ProjectActionSupport
                  extended by com.atlassian.jira.web.action.IssueActionSupport
                      extended by com.atlassian.jira.web.action.issue.SearchDescriptionEnabledAction
                          extended by com.atlassian.jira.web.action.issue.IssueNavigator
All Implemented Interfaces:
ErrorCollection, I18nHelper, FilterOperationsAction, IssueSearchResultsAction, SearchRequestViewsAction, java.io.Serializable, webwork.action.Action, webwork.action.CommandDriven, webwork.action.IllegalArgumentAware

public class IssueNavigator
extends SearchDescriptionEnabledAction
implements IssueSearchResultsAction, FilterOperationsAction, SearchRequestViewsAction

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from interface com.atlassian.jira.util.I18nHelper
I18nHelper.BeanFactory
 
Field Summary
static java.lang.String JQL_QUERY_PARAMETER
           
static java.lang.String MODE_HIDE
           
static java.lang.String MODE_SHOW
           
protected  SearchRequestFactory searchRequestFactory
           
 
Fields inherited from class com.atlassian.jira.web.action.issue.SearchDescriptionEnabledAction
fieldValuesHolder, issueSearcherManager
 
Fields inherited from class com.atlassian.jira.web.action.IssueActionSupport
attachmentManager
 
Fields inherited from class com.atlassian.jira.web.action.ProjectActionSupport
projectManager
 
Fields inherited from class com.atlassian.jira.web.action.JiraWebActionSupport
ISSUE_NOT_FOUND_RESULT, PERMISSION_VIOLATION_RESULT, request, RETURN_URL_PARAMETER, savedFilters
 
Fields inherited from class webwork.action.ActionSupport
command, errorMap, errorMessages
 
Fields inherited from interface webwork.action.Action
ERROR, INPUT, LOGIN, NONE, SUCCESS
 
Constructor Summary
IssueNavigator(SearchProvider searchProvider, ColumnLayoutManager columnLayoutManager, IssueSearcherManager issueSearcherManager, SearchRequestFactory searchRequestFactory, SearchRequestService searchRequestService, TableLayoutFactory tableLayoutFactory, CommentManager commentManager, com.atlassian.plugin.PluginAccessor pluginAccessor, PagerManager pagerManager, SearchService searchService, ApplicationProperties applicationProperties, IndexLifecycleManager indexLifecycleManager, AutoCompleteJsonGenerator autoCompleteJsonGenerator, SearchSortUtil searchSortUtil, JqlStringSupport jqlStringSupport, UserQueryHistoryManager userQueryHistoryManager, SimpleLinkManager simpleLinkManager)
           
 
Method Summary
 java.lang.String convertToId(java.lang.String key)
           
protected  FilterOperationsBean createFilterOperationsBean(java.lang.String userName)
           
 java.lang.String doClearSorts()
           
 java.lang.String doColumnOverride()
           
protected  java.lang.String doExecute()
           
 java.lang.String doExecuteAdvanced()
           
 java.lang.String doSwitchView()
           
 java.lang.String doToggleAutocompletePref()
           
 SearchRequestViewModuleDescriptor getAllExcelFields()
           
 int getBulkEditMax()
          Returns the maximum number of issues the user is allowed to bulk edit.
 SearchRequestViewModuleDescriptor getChart()
           
 CommentManager getCommentManager()
           
 SearchRequestViewModuleDescriptor getCurrentExcelFields()
           
 SearchRequestViewModuleDescriptor getFullContent()
           
 java.util.Collection<SimpleLink> getIssueOperations()
           
 java.lang.String getJqlQuery()
           
 java.lang.String getJqlQueryString()
           
 java.lang.String getJqlReservedWordsJson()
           
 int getMaxIndex(java.util.List list)
           
 java.lang.String getMode()
           
 IssueNavigatorType getNavigatorType()
           
 java.util.Collection<SearchRequestViewModuleDescriptor> getNonSystemSearchRequestViews()
           
 PagerFilter getPager()
          Store the current pager in the session.
 SearchRequestViewModuleDescriptor getPrintable()
           
 java.lang.String getRequestId()
           
 java.lang.String getRestricted(java.lang.String url)
           
 SearchRequestViewModuleDescriptor getRssComments()
           
 SearchRequestViewModuleDescriptor getRssIssues()
           
 java.util.List<java.lang.String> getSavedJqlQueryHistoryItems()
           
 java.lang.String getSearcherEditHtml(IssueSearcher searcher)
           
 SearchResults getSearchResults()
          Return the current search results to the caller.
 java.lang.Long getSelectedIssueId()
          Return the issue id that should be shown as selected.
 TableLayoutFactory getTableLayoutFactory()
          Return the object used to render the table layout.
 int getTempMax()
          Get / Set the temporary maximum - this is used for printable and excel views etc
 java.util.List<ToolOptionGroup> getToolOptions()
           
 java.lang.String getVisibleFieldNamesJson()
           
 java.lang.String getVisibleFunctionNamesJson()
           
 java.util.Collection<java.lang.String> getWarningMessages()
           
 SearchRequestViewModuleDescriptor getWord()
           
 SearchRequestViewModuleDescriptor getXml()
           
 boolean isAutocompleteDisabled()
           
 boolean isAutocompleteDisabledForUser()
           
 boolean isAutocompleteEnabledForThisRequest()
           
 boolean isBulkEditLimited()
          Tells whether the bulk edit limit property is currently restricting the number of issues in the current search that may be bulk edited.
 boolean isCurrentQueryTooComplex()
           
 boolean isFilterValid()
          Check if the filter in session is valid or not.
 boolean isFocusJql()
           
 boolean isHasBulkChangePermission()
          Checks to see if the current user has the global BULK CHANGE permission
 boolean isHasSearchRequestColumnLayout()
          Determines if the current search request has a column layout.
 boolean isNavigatorTypeAdvanced()
           
 boolean isNavigatorTypeSimple()
           
 boolean isOwnerOfSearchRequest()
           
 boolean isRequestPrivate()
           
 boolean isShowOverrideColumnLayout()
          Determines whether the "Use Your Columns" link should be shown to the user.
 boolean isUserCreated()
           
 boolean isValid()
           
 void resetPager()
           
protected  void setFieldValuesHolder(FieldValuesHolder fieldValuesHolder)
           
 void setHide(java.lang.String value)
           
 void setJqlQuery(java.lang.String jqlQuery)
           
 void setMode(java.lang.String mode)
          Control the mode (hide or show) of the left hand column
 void setRunQuery(java.lang.String query)
           
 void setShow(java.lang.String value)
           
 void setTempMax(int tempMax)
           
 void setUserCreated(boolean userCreated)
           
 
Methods inherited from class com.atlassian.jira.web.action.issue.SearchDescriptionEnabledAction
getActionParams, getFieldValuesHolder, getFilterOperationsBean, getSearchContext, getSearcherGroups, getSearchers, getSearcherViewHtml, getSearchRequestJqlString, getSearchSorts, isFilterFavourite, isSearchRequestFitsNavigator, isShown, populateFieldValuesHolderFromQuery, validateSearchFilterIsSavedFilter
 
Methods inherited from class com.atlassian.jira.web.action.IssueActionSupport
clearSelectedIssue, getAttachmentManager, getCurrentFailedLoginCount, getCurrentJQL, getCustomFieldManager, getDaysPerWeek, getEverLoggedIn, getHoursPerDay, getIssueManager, getLastFailedLogin, getLastLogin, getLoginCount, getPossibleVersions, getPossibleVersionsReleasedFirst, getPrettyDuration, getPreviousLogin, getSearchRequest, getSessionPagerFilterManager, getSessionSearchRequestManager, getSessionSearchRequestManagerFactory, getSessionSelectedIssueManager, getTotalFailedLoginCount, getUrlEncoded, getWorkflow, getWorkflowTransitionDescription, getWorkflowTransitionDisplayName, isCustomFieldHidden, isElevatedSecurityCheckRequired, isFieldHidden, isFieldHidden, isFieldHidden, isTimeTrackingEnabled, setCurrentIssue, setSearchRequest, setSelectedIssueId, updateSearchRequest
 
Methods inherited from class com.atlassian.jira.web.action.ProjectActionSupport
getBrowseableProjects, getBrowseableProjectsInCategory, getSelectedProjectId, setSelectedProject, setSelectedProject
 
Methods inherited from class com.atlassian.jira.web.action.JiraWebActionSupport
addErrorCollection, addErrorMessageByKeyIfAbsent, addErrorMessageIfAbsent, forceRedirect, getApplicationProperties, getAssignableUsers, getAssignableUsers, getCachedGroups, getComponentManager, getConglomerateCookieValue, getConstantsManager, getDateFormat, getDateTimeFormat, getDescTranslation, getExternalLinkUtils, getField, getFlushedErrorMessages, getGlobalPermissionManager, getHint, getHintManager, getJiraServiceContext, getLanguage, getNameTranslation, getOutlookDate, getPermissionManager, getProjectManager, getPropertySet, getRandomHint, getRedirect, getRemoteUser, getReturnUrl, getReturnUrlForCancelLink, getSearchSortDescriptions, getSelectedProject, getSelectedProjectObject, getServerId, getText, getTimeFormat, getUriValidator, getUserFullName, getUserProjectHistoryManager, getVersionManager, getWebworkStack, getWebworkStack, getXsrfToken, hasErrorMessage, hasErrorMessageByKey, htmlEncode, isHasIssuePermission, isHasIssuePermission, isHasPermission, isHasPermission, isHasPermission, isHasProjectPermission, isHasProjectPermission, isInlineDialogMode, isSystemAdministrator, isUserExists, returnComplete, returnComplete, returnCompleteWithInlineRedirect, setConglomerateCookieValue, setInline, setReturnUrl, setSelectedProjectId
 
Methods inherited from class com.atlassian.jira.action.JiraActionSupport
addErrorMessages, addErrorMessages, addErrors, addIllegalArgumentException, execute, getActionName, getDefaultResourceBundle, getDelegator, getKeysForPrefix, getLocale, getResult, getText, getText, getText, getText, getText, getText, getText, getText, getText0, getUnescapedText, getUserPreferences, getWatcherManager, hasAnyErrors, isEnterprise, isIndexing, isProfessional, isProfessionalOrEnterprise, isStandard, removeKeyOrAddError
 
Methods inherited from class webwork.action.ActionSupport
addError, addErrorMessage, doDefault, doValidation, getCommandName, getErrorMessages, getErrors, getHasErrorMessages, getHasErrors, getPropertyEditorMessage, getTexts, getTexts, getTimezone, invalidInput, invokeCommand, isCommand, setCommand, setErrorMessages, setErrors, validate
 
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.web.action.issue.IssueSearchResultsAction
getRemoteUser, getSearchRequest
 
Methods inherited from interface com.atlassian.jira.web.action.filter.FilterOperationsAction
getFilterOperationsBean
 
Methods inherited from interface com.atlassian.jira.util.ErrorCollection
addError, addErrorMessage, addErrorMessages, addErrors, getErrorMessages, getErrors, hasAnyErrors, setErrorMessages
 
Methods inherited from interface webwork.action.CommandDriven
getCommandName, setCommand
 

Field Detail

JQL_QUERY_PARAMETER

public static final java.lang.String JQL_QUERY_PARAMETER
See Also:
Constant Field Values

MODE_SHOW

public static final java.lang.String MODE_SHOW
See Also:
Constant Field Values

MODE_HIDE

public static final java.lang.String MODE_HIDE
See Also:
Constant Field Values

searchRequestFactory

protected final SearchRequestFactory searchRequestFactory
Constructor Detail

IssueNavigator

public IssueNavigator(SearchProvider searchProvider,
                      ColumnLayoutManager columnLayoutManager,
                      IssueSearcherManager issueSearcherManager,
                      SearchRequestFactory searchRequestFactory,
                      SearchRequestService searchRequestService,
                      TableLayoutFactory tableLayoutFactory,
                      CommentManager commentManager,
                      com.atlassian.plugin.PluginAccessor pluginAccessor,
                      PagerManager pagerManager,
                      SearchService searchService,
                      ApplicationProperties applicationProperties,
                      IndexLifecycleManager indexLifecycleManager,
                      AutoCompleteJsonGenerator autoCompleteJsonGenerator,
                      SearchSortUtil searchSortUtil,
                      JqlStringSupport jqlStringSupport,
                      UserQueryHistoryManager userQueryHistoryManager,
                      SimpleLinkManager simpleLinkManager)
Method Detail

doExecute

protected java.lang.String doExecute()
                              throws java.lang.Exception
Overrides:
doExecute in class webwork.action.ActionSupport
Throws:
java.lang.Exception

doSwitchView

public final java.lang.String doSwitchView()

isCurrentQueryTooComplex

public boolean isCurrentQueryTooComplex()

doToggleAutocompletePref

public final java.lang.String doToggleAutocompletePref()

doClearSorts

public final java.lang.String doClearSorts()

doExecuteAdvanced

public final java.lang.String doExecuteAdvanced()

getSavedJqlQueryHistoryItems

public java.util.List<java.lang.String> getSavedJqlQueryHistoryItems()

getVisibleFieldNamesJson

public java.lang.String getVisibleFieldNamesJson()
                                          throws JSONException
Throws:
JSONException

getVisibleFunctionNamesJson

public java.lang.String getVisibleFunctionNamesJson()
                                             throws JSONException
Throws:
JSONException

getJqlReservedWordsJson

public java.lang.String getJqlReservedWordsJson()
                                         throws JSONException
Throws:
JSONException

isFocusJql

public boolean isFocusJql()

doColumnOverride

public java.lang.String doColumnOverride()
                                  throws java.lang.Exception
Throws:
java.lang.Exception

getPager

public PagerFilter getPager()
Store the current pager in the session. The pager handles paging through the issue list.

Returns:
the current searching pager.

getTableLayoutFactory

public TableLayoutFactory getTableLayoutFactory()
Description copied from interface: IssueSearchResultsAction
Return the object used to render the table layout.

Specified by:
getTableLayoutFactory in interface IssueSearchResultsAction
Returns:
the object used to render the table layout.

resetPager

public void resetPager()

getSearchResults

public SearchResults getSearchResults()
                               throws SearchException
Description copied from interface: IssueSearchResultsAction
Return the current search results to the caller.

Specified by:
getSearchResults in interface IssueSearchResultsAction
Returns:
the current search results.
Throws:
SearchException

getSelectedIssueId

public java.lang.Long getSelectedIssueId()
Description copied from interface: IssueSearchResultsAction
Return the issue id that should be shown as selected.

Specified by:
getSelectedIssueId in interface IssueSearchResultsAction
Overrides:
getSelectedIssueId in class IssueActionSupport
Returns:
the issue id that should be shown as selected.

isUserCreated

public boolean isUserCreated()

setUserCreated

public void setUserCreated(boolean userCreated)

getMode

public java.lang.String getMode()

setMode

public void setMode(java.lang.String mode)
Control the mode (hide or show) of the left hand column

Parameters:
mode - mode

setHide

public void setHide(java.lang.String value)

setShow

public void setShow(java.lang.String value)

getTempMax

public int getTempMax()
Get / Set the temporary maximum - this is used for printable and excel views etc

Returns:
temp max

setTempMax

public void setTempMax(int tempMax)

getJqlQueryString

public java.lang.String getJqlQueryString()

isHasSearchRequestColumnLayout

public boolean isHasSearchRequestColumnLayout()
                                       throws ColumnLayoutStorageException
Determines if the current search request has a column layout. Used in the header of the IssueNavigator

Throws:
ColumnLayoutStorageException

isOwnerOfSearchRequest

public boolean isOwnerOfSearchRequest()

isShowOverrideColumnLayout

public boolean isShowOverrideColumnLayout()
                                   throws ColumnLayoutStorageException
Determines whether the "Use Your Columns" link should be shown to the user. This will happen IF the search request has its own column layout AND If the user has NOT chosen to override the search request's column layout

Throws:
ColumnLayoutStorageException

isHasBulkChangePermission

public boolean isHasBulkChangePermission()
Checks to see if the current user has the global BULK CHANGE permission


getSearcherEditHtml

public java.lang.String getSearcherEditHtml(IssueSearcher searcher)

setFieldValuesHolder

protected void setFieldValuesHolder(FieldValuesHolder fieldValuesHolder)

isValid

public boolean isValid()

getRequestId

public java.lang.String getRequestId()

isRequestPrivate

public boolean isRequestPrivate()

getCommentManager

public CommentManager getCommentManager()

getNonSystemSearchRequestViews

public java.util.Collection<SearchRequestViewModuleDescriptor> getNonSystemSearchRequestViews()
Specified by:
getNonSystemSearchRequestViews in interface SearchRequestViewsAction
Returns:
all the SearchRequestViewModuleDescriptors loaded via plugins (no system defined ones).

getPrintable

public SearchRequestViewModuleDescriptor getPrintable()
Specified by:
getPrintable in interface SearchRequestViewsAction

getFullContent

public SearchRequestViewModuleDescriptor getFullContent()
Specified by:
getFullContent in interface SearchRequestViewsAction

getXml

public SearchRequestViewModuleDescriptor getXml()
Specified by:
getXml in interface SearchRequestViewsAction

getRssIssues

public SearchRequestViewModuleDescriptor getRssIssues()
Specified by:
getRssIssues in interface SearchRequestViewsAction

getRssComments

public SearchRequestViewModuleDescriptor getRssComments()
Specified by:
getRssComments in interface SearchRequestViewsAction

getWord

public SearchRequestViewModuleDescriptor getWord()
Specified by:
getWord in interface SearchRequestViewsAction

getAllExcelFields

public SearchRequestViewModuleDescriptor getAllExcelFields()
Specified by:
getAllExcelFields in interface SearchRequestViewsAction

getCurrentExcelFields

public SearchRequestViewModuleDescriptor getCurrentExcelFields()
Specified by:
getCurrentExcelFields in interface SearchRequestViewsAction

getChart

public SearchRequestViewModuleDescriptor getChart()
Specified by:
getChart in interface SearchRequestViewsAction

getRestricted

public java.lang.String getRestricted(java.lang.String url)

isFilterValid

public final boolean isFilterValid()
Description copied from class: SearchDescriptionEnabledAction
Check if the filter in session is valid or not.

Specified by:
isFilterValid in interface FilterOperationsAction
Overrides:
isFilterValid in class SearchDescriptionEnabledAction
Returns:
true iff the current filter is valid or false otherwise.

isBulkEditLimited

public boolean isBulkEditLimited()
Tells whether the bulk edit limit property is currently restricting the number of issues in the current search that may be bulk edited.

Returns:
true only if the bulk edit limit is restricting.

getBulkEditMax

public int getBulkEditMax()
Returns the maximum number of issues the user is allowed to bulk edit. Possibly the number of search results that were returned, but no more than the number configured by APKeys.JIRA_BULK_EDIT_LIMIT_ISSUE_COUNT if it is set to a positive number.

Returns:
the number of issues that can be bulk edited.

createFilterOperationsBean

protected FilterOperationsBean createFilterOperationsBean(java.lang.String userName)
Overrides:
createFilterOperationsBean in class SearchDescriptionEnabledAction

getNavigatorType

public IssueNavigatorType getNavigatorType()

isNavigatorTypeAdvanced

public boolean isNavigatorTypeAdvanced()

isNavigatorTypeSimple

public boolean isNavigatorTypeSimple()

setRunQuery

public void setRunQuery(java.lang.String query)

setJqlQuery

public void setJqlQuery(java.lang.String jqlQuery)

getJqlQuery

public java.lang.String getJqlQuery()

isAutocompleteDisabled

public boolean isAutocompleteDisabled()

isAutocompleteDisabledForUser

public boolean isAutocompleteDisabledForUser()

isAutocompleteEnabledForThisRequest

public boolean isAutocompleteEnabledForThisRequest()

getToolOptions

public java.util.List<ToolOptionGroup> getToolOptions()
                                               throws SearchException,
                                                      ColumnLayoutStorageException
Throws:
SearchException
ColumnLayoutStorageException

getMaxIndex

public int getMaxIndex(java.util.List list)

getWarningMessages

public final java.util.Collection<java.lang.String> getWarningMessages()

getIssueOperations

public java.util.Collection<SimpleLink> getIssueOperations()

convertToId

public java.lang.String convertToId(java.lang.String key)


Copyright © 2002-2010 Atlassian. All Rights Reserved.