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 Details

    • render

      String render(String value, IssueRenderContext context)
      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

      String renderAsText(String value, IssueRenderContext context)
      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

      Object transformForEdit(Object rawValue)
      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

      Object transformFromEdit(Object editValue)
      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

      void init(JiraRendererModuleDescriptor jiraRendererModuleDescriptor)
      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

      Simple accessor method for the module descriptor.
      Returns:
      the module descriptor that spawned this renderer.