JIRA Plugin Capabilities

mark Sisson July 10, 2013

I'm considering developing a JIRA plugin and know what I'd "like" but I'm not sure if JIRA's extensibility will accomodate these features. I believe most of these can be done (right?) but for the ones that can't are there alternative UX metaphors that others have used? For instance, for #4 I've seen other plugins require you save a saved query and then reference that query elsewhere to accomplish the work on the set of records.

1. Create three new issue types with custom icons, workflows, and fields

2. Create new link types that can be used between these three new issue types

3. Provide an extension to the REST API to import and export these records

4. Add an option to the "tools" menu in the issue navigator that will operate on the records selected in the navigator.

5. On the issue edit screens for these new issue types add new Actions

6. When the new issue types are edited or their workflow state changes, intercept that event and update other related records

Thanks!

1 answer

1 accepted

1 vote
Answer accepted
Daniel Wester
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
July 10, 2013

I'd probably say that most of these can be done. #1-3 - you'll probably want to read through the javadoc at https://docs.atlassian.com/jira/6.0/ and identify the proper services/managers to use - I'm guessing you'll want to look at the IssueLinkTypeManager and IssueTypeManager.

As far as #4 - You'll want to do a WebItem( https://developer.atlassian.com/display/JIRADEV/Web+Item+Plugin+Module ). I'm not sure of the extension point - but if you dig in JIRA's source you'll find the other ones in there.

Once you have #4 set up - #5 is just an Action or a mixture of Soy/Rest (again http://developer.atlassian.com has more info about these).

#6 is a JIRA Event listener - there's a tutorial at https://developer.atlassian.com/display/JIRADEV/Writing+JIRA+event+listeners+with+the+atlassian-event+library

Nic Brough -Adaptavist-
Community Leader
Community Leader
Community Leaders are connectors, ambassadors, and mentors. On the online community, they serve as thought leaders, product experts, and moderators.
July 10, 2013

I'd actually say items 1 and 2 are standard admin items to be done as a one-off by the administrators of the system. You could code for it, but they'd take two minutes per Jira installation and you wouldn't need to do them again.

For item 3, REST already exposes a lot of the data, so I'm wondering what your data is and why you think you'd need to extend the REST interface to expose it.

Daniel has already covered what I'd wave at for 4-6.

mark Sisson July 10, 2013

Thanks Daniel and Nic, great feedback. I guess #4 is the most worrisome for me: I took a quick peek at the WebItem capabilities but there's not a specific location to add to that Tool menu. So how rough does it get for a newbie to try and find that out and slug through JIRA source (is that available?) to find out the right ID to use? Not having done it I just wanted to get a sense of how far you need to learn JIRA source code to be effective.

Daniel Wester
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Leaders.
July 11, 2013

If you have a license for JIRA - you should be able to download JIRA's source through http://my.atlassian.com. Once you have it down - just search in it for 'web-item'.There are various values documented on developer.atlassian.com but I don't see this one. I usually find another item in the area I want to put something and look for it (more than likely you'll want to search for the i18n string).

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events