Jira

Jira Plugin Development Cookbook

1. Welche Plugin Modulen unterstützt Jira 6?

Nach der Ausführung des atlas-create-jira-plugin-module bekommt der Entwickler die folgende 34 vorgeschlagenen Modulen:

Jira Plugin Module

1. Component Import

Beispiel:

<component-import key="eventPublisher" interface="com.atlassian.event.api.EventPublisher"/>

2. Component

Beispiel:

<component key="eventListener" class="com.sambi.jira.plugins.visualizer.IssueCreatedResolvedListener">
      <description>Class that processes the incoming JIRA issue events.</description>
</component>

3. Component Tab Panel

Beispiel:

<component-tabpanel key="component-openissues-panel" i18n-name-key="componentpanels.openissues.name" name="Open Issues Panel" class="com.atlassian.jira.plugin.componentpanel.impl.GenericTabPanel">...

4. Custom Field

Beispiel:

<customfield-type key="personalKeys" class="com.sambi.jira.plugins.visualizer.PersonalCustomField">...

5. Custom Field Searcher

Beispiel:

<customfield-searcher key="selectpersonalkeysearcher" i18n-name-key="visualiser.customfield.personaksearcher.name" class="com.atlassian.jira.issue.customfields.searchers.ExactTextSearcher">...

7. Custom Field Searcher

Beispiel:

<gadget key="timesheet-gadget" name="Timesheet Gadget" location="timesheet-gadget.xml">
		<param name="roles-required">admin</param>
	</gadget>

9. Keyboard Shortcut

Beispiel:

<keyboard-shortcut key="visualizer.keyboard.shortcut.issueaction.log_work" i18n-name-key="visualizer.keyboard.shortcut.log_work" name="Visualizer Log Work issue shortcut">...

10. JQL Function

Beispiel:

<jql-function key="released-versions-jql-function" i18n-name-key="jql.function.plugin.released.versions.name" name="Released Versions Function"
            class="com.atlassian.jira.plugin.jql.function.AllReleasedVersionsFunction">
        <description key="jql.function.plugin.released.versions.desc">Returns released versions for the specified projects.</description>
        <fname>releasedVersions</fname>
        <list>true</list>
    </jql-function>

16. Report

Beispiel:

<report name="Creation Report" i18n-name-key="creation-report.name" key="creation-report" class="com.atlassian.plugins.tutorial.jira.reports.CreationReport">

21. Servlet

Beispiel:

<servlet name="Issues Timesheet" i18n-name-key="issues-timesheet.servet" key="issues-timesheet-servlet"
			 class="com.sambi.jira.plugins.visualizer.TimesheetServlet">
		<description key="issues-timesheet.servlet">Timesheet Servlet</description>
		<url-pattern>/timesheet</url-pattern>
	</servlet>

25. Web Item

Beispiel:

<web-item name="Client Sites" i18n-name-key="client-sites.name" key="client-sites" section="system.top.navigation.bar" weight="1000">
   	<description key="client-sites.description">The Client Sites Plugin</description>
   	<label key="client-sites.label"/>
   	<link linkId="client-sites-link"/>
  </web-item>

26. Web Panel

Beispiel:

<web-panel key="other" name="view_other" location="workflow.transition.tabs" weight="400" class="com.atlassian.jira.plugin.webfragment.EmptyWebPanel">
        <label key="admin.workflowtransition.other" />
    </web-panel>

28. Web Resource

Beispiel:

<web-resource key="jira-report-plugin-resources" name="jira-report-plugin Web Resources">
    <dependency>com.atlassian.auiplugin:ajs</dependency>
    <resource type="download" name="jira-report-plugin.css" location="/css/jira-report-plugin.css"/>
    <resource type="download" name="jira-report-plugin.js" location="/js/jira-report-plugin.js"/>
    <resource type="download" name="images/" location="/images"/>
    <context>jira-report-plugin</context>
  </web-resource>

30. Web Section

Beispiel:

<web-section name="mySection" i18n-name-key="my-section.name" key="my-section" location="client-sites-link" weight="1000">
  	<description key="my-section.description">The mySection Plugin</description>
  </web-section>

31. Webwork Plugin

Beispiel:

<webwork1 key="timesheetaction" name="Timesheet action" class="java.lang.Object" roles-required="admin">
      	<description>Define Timesheet 'action'</description>
      	<actions>
      		<action name="com.sambi.jira.plugins.visualizer.VisualizerTimesheetAction" alias="VisualizerTimesheet">
          		<view name="success">/templates/time-tracking.vm</view>
          		<view name="error">/templates/error.vm</view>
          		<view name="input">/templates/input.vm</view>
        	</action>
      	</actions>
    </webwork1>
Jira Plugin Development - SAM Business Informatics