Book Image

JIRA Development Cookbook - Third Edition

By : Jobin Kuruvilla
Book Image

JIRA Development Cookbook - Third Edition

By: Jobin Kuruvilla

Overview of this book

JIRA provides issue and project tracking for software development teams to improve code quality and the speed of development. With the new version of JIRA, you can create your own JIRA plugins and customize the look and feel of your JIRA UI easier than ever. JIRA Development Cookbook , Third Edition, is a one-stop resource to master extensions and customizations in JIRA. This book starts with recipes about simplifying the plugin development process followed by recipes dedicated to the plugin framework. Then, you will move on to writing custom field plugins to create new field types or custom searchers. You will also learn how to program and customize workflows to transform JIRA into a user-friendly system. With so much data spanning different projects, issues, and so on, we will cover how to work on reports and gadgets to get customized data according to our needs. At the end of the book, you will learn how to customize JIRA by adding new tabs, menus, and web items; communicate with JIRA via the REST APIs; and work with the JIRA database.
Table of Contents (18 chapters)
JIRA Development Cookbook Third Edition
Credits
About the Author
Acknowledgments
About the Reviewer
www.PacktPub.com
Preface

Writing listeners in JIRA


Listeners are very powerful features in JIRA. JIRA has a mechanism for throwing events whenever something happens on an issue, such as creating an issue, updating an issue, progressing on the workflows, and so on. Using listeners, we can capture these events and do special things based on our requirements.

Listeners are implemented using the atlassian-event library. All we have to do is to register the listener class as a component and then use the EventListener annotation to listen on the events.

Getting ready

Create a skeleton plugin using Atlassian Plugin SDK.

How to do it...

Let us write a simple listener that prints a different message to the console based on different issue events. Following are the steps required.

  1. Modify the plugin pom.xml to include the spring dependencies, as shown here:

            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
         ...