Interface JiraRendererPlugin
- All Known Implementing Classes:
AtlassianWikiRenderer
,DefaultTextRenderer
,ReferenceJiraRenderer
@PublicSpi
@PublicApi
public interface JiraRendererPlugin
The top-level interface that defines a renderer and its configuration within jira.
-
Method Summary
Modifier and TypeMethodDescriptionSimple accessor method for the module descriptor.Returns a unique identifier for this renderer plugin.void
init
(JiraRendererModuleDescriptor jiraRendererModuleDescriptor) This allows a plugin to get a handle on the module descriptor that spawned the plugin.render
(String value, IssueRenderContext context) This will render the provided value within the provided context and produce a rendered output.renderAsText
(String value, IssueRenderContext context) This will render the provided value within the provided context and produce a rendered output that is text readable.transformForEdit
(Object rawValue) This allows the renderer to perform a transformation on the raw value before populating an editable component with the value.transformFromEdit
(Object editValue) This allows the renderer to perform a transformation on the submitted edit value before storing the value in the system.
-
Method Details
-
render
This will render the provided value within the provided context and produce a rendered output.- Parameters:
value
- the raw value to render.context
- the issue context for this rendering- Returns:
- the transformed value having passed through the rendering process.
-
renderAsText
This will render the provided value within the provided context and produce a rendered output that is text readable.- Parameters:
value
- the raw value to render.context
- the issue context for this rendering- Returns:
- the transformed value having passed through the rendering process, the value must be text readable.
-
getRendererType
String getRendererType()Returns a unique identifier for this renderer plugin.- Returns:
- the unique identifier for this renderer plugin implementation.
-
transformForEdit
This allows the renderer to perform a transformation on the raw value before populating an editable component with the value. This can be useful if the value being stored is a different format (i.e. wiki markup), than the edit component expects (i.e. wysiwig edit control that expects html). NOTE: this method need not do anything if the edit control can handle the value as stored in the system.- Parameters:
rawValue
- is the value stored in the system, before transform.- Returns:
- the value in a form that the renderers edit control expects.
-
transformFromEdit
This allows the renderer to perform a transformation on the submitted edit value before storing the value in the system. This can be useful if the value being submitted is a different format (i.e. html markup that the edit control generates), than the system expects to store (i.e. wiki markup). NOTE: this method need not do anything if the system is happy to store the value the edit control produces.- Parameters:
editValue
- is the value produced by the edit control.- Returns:
- the value in a form that the system expects to store.
-
init
This allows a plugin to get a handle on the module descriptor that spawned the plugin.- Parameters:
jiraRendererModuleDescriptor
- is the module descriptor that spawned the plugin. If the plugin uses resources, such as velocity templates, then access can be gained through this descriptor.
-
getDescriptor
JiraRendererModuleDescriptor getDescriptor()Simple accessor method for the module descriptor.- Returns:
- the module descriptor that spawned this renderer.
-