@PublicApi public final class

RemoteIssueLink

extends Object
java.lang.Object
   ↳ com.atlassian.jira.issue.link.RemoteIssueLink

@PublicApi

This class is designed for plugins to consume (call its methods).

Clients of @PublicApi can expect that programs compiled against a given version will remain binary compatible with later versions of the @PublicApi as per each product's API policy as long as the client does not implement/extend @PublicApi interfaces or classes (refer to each product's API policy for the exact guarantee---usually binary compatibility is guaranteed at least across minor versions).

Note: since @PublicApi interfaces and classes are not designed to be implemented or extended by clients, we may perform certain types of binary-incompatible changes to these classes and interfaces, but these will not affect well-behaved clients that do not extend/implement these types (in general, only classes and interfaces annotated with @PublicSpi are safe to extend/implement).

Class Overview

Represents a link between a JIRA issue and a remote object in a remote application. Examples may include:

  • a JIRA issue on another JIRA server
  • a Confluence page
  • a ticket in a helpdesk system
  • a test case in a testing system

Summary

Fields
public static String APPLICATION_TYPE_CONFLUENCE
public static String APPLICATION_TYPE_JIRA
Public Constructors
RemoteIssueLink(Long id, Long issueId, String globalId, String title, String summary, String url, String iconUrl, String iconTitle, String relationship, Boolean resolved, String statusIconUrl, String statusIconTitle, String statusIconLink, String applicationType, String applicationName)
RemoteIssueLink(Long id, Long issueId, String globalId, String title, String summary, String url, String iconUrl, String iconTitle, String relationship, Boolean resolved, String statusIconUrl, String statusIconTitle, String statusIconLink, String applicationType, String applicationName, String statusName, String statusDescription, String statusCategoryKey, String statusCategoryColorName)
Public Methods
String getApplicationName()
Returns the human-readable name of the remote application instance that contains the remote object.
String getApplicationType()
Returns the type of remote application that we are linking with.
String getGlobalId()
Returns a String which uniquely identifies the object in the remote application.
String getIconTitle()
Returns the tool tip text for the icon.
String getIconUrl()
Returns a url for an icon to represent the remote object.
Long getId()
Returns the id of the link.
Long getIssueId()
Returns the id of the issue we are linking with.
String getRelationship()
Returns a String which describes the relationship between the JIRA issue and the remote object.
String getStatusCategoryColorName()
String getStatusCategoryKey()
String getStatusDescription()
String getStatusIconLink()
Returns a hyperlink for the status icon.
String getStatusIconTitle()
Returns the tool tip text for the status icon.
String getStatusIconUrl()
Returns a url for an icon representing the status of the remote object.
String getStatusName()
String getSummary()
Returns a summary of the remote object.
String getTitle()
Returns a String to identify the remote object.
String getUrl()
Returns a url to the object in the remote application.
boolean hasStatusCategory()
Boolean isResolved()
Returns a Boolean to indicate whether the remote object is resolved or not.
[Expand]
Inherited Methods
From class java.lang.Object

Fields

public static String APPLICATION_TYPE_CONFLUENCE

public static String APPLICATION_TYPE_JIRA

Public Constructors

public RemoteIssueLink (Long id, Long issueId, String globalId, String title, String summary, String url, String iconUrl, String iconTitle, String relationship, Boolean resolved, String statusIconUrl, String statusIconTitle, String statusIconLink, String applicationType, String applicationName)

public RemoteIssueLink (Long id, Long issueId, String globalId, String title, String summary, String url, String iconUrl, String iconTitle, String relationship, Boolean resolved, String statusIconUrl, String statusIconTitle, String statusIconLink, String applicationType, String applicationName, String statusName, String statusDescription, String statusCategoryKey, String statusCategoryColorName)

Public Methods

public String getApplicationName ()

Returns the human-readable name of the remote application instance that contains the remote object. Links are grouped based on the applicationType and applicationName in the user interface. The applicationName is prepended to the iconTitle to form the icon tool tip text.

For example: "My Company's Confluence", "HR JIRA", "Helpdesk JIRA"

Returns
  • the human-readable name of the remote application instance that contains the remote object

public String getApplicationType ()

Returns the type of remote application that we are linking with. This should be the product name, namespaced with the product company. This value is not displayed in the JIRA user interface. Links are grouped based on the applicationType and applicationName in the user interface.

Renderering plugins can register to render a certain type of application. It is not possible to use a plugin to render links without an applicationType.

For example: "com.atlassian.confluence", "com.mycompany.myproduct"

Returns
  • the type of remote application that we are linking with

public String getGlobalId ()

Returns a String which uniquely identifies the object in the remote application. This value must be unique across all remote objects in all remote applications. The maximum length of this field is 255 characters.

For simplicity, this could simply be the url, although this is not wise if there is a chance the url may change.

This value is not displayed in the JIRA user interface. We suggest including in this field any values that will be needed by a renderer plugin, for example the application url and remote object identifier to make REST calls.

For example: "url=http://www.myapplication.com&ticketid=12345"

Returns
  • a String which uniquely identifies the object in the remote application

public String getIconTitle ()

Returns the tool tip text for the icon. The applicationName is prepended to this value to form the icon tool tip text.

For example: "Bug - A problem which impairs or prevents the functions of the product"

Returns
  • the tool tip text for the icon

public String getIconUrl ()

Returns a url for an icon to represent the remote object. The size of the icon should be 16x16 pixels.

For example: http://mycompany.com/jira/images/icons/bug.png

Returns
  • a url for an icon to represent the remote object

public Long getId ()

Returns the id of the link. This is used to refer to a link when updating and deleting.

Returns
  • the id of the link

public Long getIssueId ()

Returns the id of the issue we are linking with.

Returns
  • the id of the issue we are linking with

public String getRelationship ()

Returns a String which describes the relationship between the JIRA issue and the remote object.

For example: "relates to", "is mentioned in", "links to". It could even be a simple noun, such as "Test Case".

Returns
  • a String which describes the relationship between the JIRA issue and the remote object

public String getStatusCategoryColorName ()

public String getStatusCategoryKey ()

public String getStatusDescription ()

public String getStatusIconLink ()

Returns a hyperlink for the status icon. If null, no hyperlink is shown. This value is not used if the statusIconUrl is null.

Returns

public String getStatusIconTitle ()

Returns the tool tip text for the status icon. If null, no tool tip text is shown. This value is not used if the statusIconUrl is null.

Returns

public String getStatusIconUrl ()

Returns a url for an icon representing the status of the remote object. The size of the icon should be 16x16 pixels. This icon is shown next to the summary in the JIRA user interface, and is right justified. This icon does not have to strictly represent a "status", and may instead represent some secondary information about the link.

For example: the status of a JIRA issue, the author of a test case

Returns
  • a url for an icon representing the status of the remote object

public String getStatusName ()

public String getSummary ()

Returns a summary of the remote object. This is shown after the title in the JIRA user interface.

For example: a JIRA issue summary, a helpdesk ticket title

Returns
  • a summary of the remote object

public String getTitle ()

Returns a String to identify the remote object. This is shown as the text for the url in the JIRA user interface.

For example: a JIRA issue key, a Confluence page title, a helpdesk ticket number

Returns
  • a String to identify the remote object

public String getUrl ()

Returns a url to the object in the remote application.

For example: a confluence page url

Returns
  • a url to the object in the remote application

public boolean hasStatusCategory ()

public Boolean isResolved ()

Returns a Boolean to indicate whether the remote object is resolved or not. If the value is true, it is "resolved", and if the value is false, it is "unresolved". This value will only make sense where the remote object is something that is resolvable (eg. an issue, support ticket, etc). It will not make sense for things like wiki pages. In that case, the value should be null.

If the value is true, the remote issue link be shown in a strikethrough font in the user interface.

Returns
  • a Boolean to indicate whether the remote object is resolved or not