com.atlassian.jira.plugin.issuetabpanel
Interface IssueTabPanel2

All Superinterfaces:
IssueTabPanel
All Known Implementing Classes:
AbstractIssueTabPanel2, AllTabPanel

@PublicSpi
public interface IssueTabPanel2
extends IssueTabPanel

This is the v2 SPI for the issue-tabpanel JIRA module type. Issue tab panels allow plugins to display their content in the JIRA view issue screen. Examples of issue tab panels include the "Comment", "Work Log", and the "Source" tabs.

Note that implementations of this interface must be able to work when either the legacy or the new getActions method is called, since there may remain callers that use the legacy method. The recommended way to do that is to extend the AbstractIssueTabPanel2 class and override the hooks that are available in that class.

This plugin type is documented online.

Since:
v5.0
See Also:
IssueTabPanel3

Method Summary
 GetActionsReply getActions(GetActionsRequest request)
          Returns a list of issue actions in the order that you want them to be displayed.
 ShowPanelReply showPanel(ShowPanelRequest request)
          Indicates whether this tab should be shown on a given issue.
 
Methods inherited from interface com.atlassian.jira.plugin.issuetabpanel.IssueTabPanel
getActions, init, showPanel
 

Method Detail

showPanel

ShowPanelReply showPanel(ShowPanelRequest request)
Indicates whether this tab should be shown on a given issue.

Parameters:
request - a ShowPanelRequest
Returns:
a ShowPanelRequest indicating whether to show the panel or not

getActions

GetActionsReply getActions(GetActionsRequest request)
Returns a list of issue actions in the order that you want them to be displayed. This method will only be called if showPanel returned true for a given issue and user. The request parameter contains the user that is viewing the tab, information as to whether the tab is being loaded using an AJAX request, and so on.

Example implementation:

 @Override
 public GetActionsReply getActions(GetActionsRequest request)
 {
     if (!request.isAsynchronous())
     {
         return GetActionsReply.create(new AjaxTabPanelAction(request));
     }

     return GetActionsReply.create(getActionsList(request));
 }
 

Note that for the 'all' tab, the returned actions will be displayed in order according to the value returned by IssueAction.getTimePerformed().

Parameters:
request - a GetActionsRequest
Returns:
a GetActionsReply containing the actions to display


Copyright © 2002-2014 Atlassian. All Rights Reserved.