Objectives

This technical features may be usefull for any other Plugin Developper.

JIRA provides differents settings named Schemes :

  • Issue Security Schemes
  • Notification Schemes
  • Permission Schemes
  • Workflow Schemes
  • Issue Types Scheme
This schemes may be very simple like Issue Security Schemes or Notification Schemes, or very complex like Workflow Schemes or Issue Types Scheme.



Through, these feature, I tried to offer a more easy way to build its own Scheme, by providing :
  • some generic Velocity Templates
  • an implementation : Link Scheme

Schemes - Generic Velocity Templates

These templates are availables in jira-plugin-kaamelot-core/src/main/resources/secure/admin/views/schemes. See SVN sources

Schemes - Link Scheme Implementation

The Link Scheme implementation consist in :
  • Dedicated Velocity Templates
  • Scheme Action implementation




Dedicated Velocity Templates are base on the same mechanism
  • Variables specifying the implemented Scheme and some I18n properties,
  • Parse of the generic Velocity Template
See below sample or SVN sources
				
#set ($SchemeType = "Link" )
#set ($i18n = $action)
#set ($actionMode = "add" )

#set ($i18nScheme = $i18n.getText("admin.schemes.link.scheme") )
#set ($i18nTitle = $i18n.getText("admin.schemes.link.add.scheme") )
#set ($i18nDescription = $i18n.getText("admin.schemes.link.add.scheme.description") )

#parse('secure/admin/views/schemes/addeditscheme.vm')




Scheme Action implementation have to be recreated for each new Scheme. See SVN sources