public abstract class

AbstractPluggableTabPanelAction

extends IssueActionSupport
java.lang.Object
   ↳ webwork.action.ActionSupport
     ↳ com.atlassian.jira.action.JiraActionSupport
       ↳ com.atlassian.jira.web.action.JiraWebActionSupport
         ↳ com.atlassian.jira.web.action.ProjectActionSupport
           ↳ com.atlassian.jira.web.action.IssueActionSupport
             ↳ com.atlassian.jira.web.action.AbstractPluggableTabPanelAction<TabPanelClass extends com.atlassian.jira.plugin.PluggableTabPanelModuleDescriptor>
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

Manages the setting, retrieval, checking and activating of a "selected tab" for any page that wishes to provide navigation to "tab panels".

Summary

[Expand]
Inherited Constants
From class com.atlassian.jira.web.action.JiraWebActionSupport
From interface webwork.action.Action
Fields
protected final PluginAccessor pluginAccessor
[Expand]
Inherited Fields
From class com.atlassian.jira.web.action.IssueActionSupport
From class com.atlassian.jira.web.action.ProjectActionSupport
From class com.atlassian.jira.web.action.JiraWebActionSupport
From class com.atlassian.jira.action.JiraActionSupport
From class webwork.action.ActionSupport
Public Constructors
AbstractPluggableTabPanelAction(PluginAccessor pluginAccessor)
Public Methods
String getSelected()
TabPanelClass getSelectedTabPanel()
List<TabPanelClass> getTabPanels()
void setPersistenceKey(String persistenceKey)
void setSelectedTab(String selectedTab)
Set the name of the selected tab.
Protected Methods
boolean canSeeTab(String tabKey)
String getSelectedTab()
Retrieve the name of the tab panel that is selected.
abstract List<TabPanelClass> getTabPanelModuleDescriptors()
Retrieves the tab panels for this page via the plugin accessor.
List<TabPanelClass> initTabPanels()
Retrieves and initialises the tab panels via the plugin accessor
abstract boolean isTabPanelHidden(TabPanelClass descriptor)
Returns true if the tab panel of the given descriptor should be hidden from the current view
[Expand]
Inherited Methods
From class com.atlassian.jira.web.action.IssueActionSupport
From class com.atlassian.jira.web.action.ProjectActionSupport
From class com.atlassian.jira.web.action.JiraWebActionSupport
From class com.atlassian.jira.action.JiraActionSupport
From class webwork.action.ActionSupport
From class java.lang.Object
From interface com.atlassian.jira.util.ErrorCollection
From interface com.atlassian.jira.util.I18nHelper
From interface com.atlassian.jira.web.HttpServletVariables
From interface com.atlassian.jira.web.util.AuthorizationSupport
From interface webwork.action.Action
From interface webwork.action.CommandDriven
From interface webwork.action.IllegalArgumentAware

Fields

protected final PluginAccessor pluginAccessor

Public Constructors

public AbstractPluggableTabPanelAction (PluginAccessor pluginAccessor)

Public Methods

public String getSelected ()

public TabPanelClass getSelectedTabPanel ()

public List<TabPanelClass> getTabPanels ()

Returns
  • A list of TabPanelClass objects, never null

public void setPersistenceKey (String persistenceKey)

public void setSelectedTab (String selectedTab)

Set the name of the selected tab. Used by com.atlassian.jira.webwork.JiraSafeActionParameterSetter#setActionProperty(java.lang.reflect.Method, webwork.action.Action, String[]).

Parameters
selectedTab a complete module descriptor key for the TabPanelClass to set as the selected tab.

Protected Methods

protected boolean canSeeTab (String tabKey)

protected String getSelectedTab ()

Retrieve the name of the tab panel that is selected. Protected because it's used in some error log messages.

Returns
  • The complete module key of the selected tab. If no tab is currently selected, it will return the first available tab on the page. If there are no tabs to select, returns null.

protected abstract List<TabPanelClass> getTabPanelModuleDescriptors ()

Retrieves the tab panels for this page via the plugin accessor. Used by initialisation method to collect the list of tab panels for this page

protected List<TabPanelClass> initTabPanels ()

Retrieves and initialises the tab panels via the plugin accessor

Returns
  • list of TabPanelClass objects, never null

protected abstract boolean isTabPanelHidden (TabPanelClass descriptor)

Returns true if the tab panel of the given descriptor should be hidden from the current view

Parameters
descriptor module descriptor
Returns
  • true if hidden, false otherwise
Throws
PermissionException if project is invalid or not visible to the current user