Fisheye and Crucible use the standard Atlassian Plugin Framework, so your first step should be to understand how to use the Atlassian Plugin SDK. After you understand the process of developing with the Atlassian Plugin SDK, you need to understand the specifics of developing plugins for Fisheye and Crucible.
To get started, you can follow a few tutorials. You will also need to understand the plugin module types that Fisheye/Crucible supports and the REST and Java APIs which plugins use to access Fisheye/Crucible.
If you have an idea for making Fisheye/Crucible more useful to you, then this page helps you decide how to do it. You can translate your requirements into a set of software components you will need to write. Look through the list of use cases below and find those that best match yours.
If you want to display the report in Fisheye/Crucible, you can write a Servlet Plugin Module. If you are using an external reporting tool you can write a REST Client to extract the data. You can't access data in Fisheye/Crucible via SQL - if you want to use an SQL based tool you'll need to extract data via a REST Client and insert it into your reporting database.
Useful Tutorials
You should write a REST Client to do this. If you needed to use another protocol, you could write a Servlet Plugin Module and implement the protocol yourself. If you need to process the data before your application asks for (perhaps you just want to transfer a summary) you can write a REST module to provide a different interface to that provided by the standard Fisheye/Crucible REST interface.
Useful Tutorials
You can write an Event Listener Module which will be called when something happens (e.g. Fisheye indexes a new change set, or a user completes a review). These can make an HTTP request to your application, update your database or open a socket to your application.
Useful Tutorials
You can write an SCM Module to allow Crucible to see the directory structure and history of another revision control system. This doesn't provide all the features Fisheye has, but it does allow you to perform code reviews. You can also create reviews from other Source Control Systems without writing a plugin by creating patch file reviews, manually via the UI or via the REST interface.
Useful Tutorials
You can write an Event Listener Module and have it contact your application when it sees a state change event.
Useful Tutorials
You can write a Gadget Module which gets information from Fisheye/Crucible via a REST Module (or just uses the existing REST API and displays it in an OpenSocial container.
You can add your own pages to Fisheye/Crucible by writing a Servlet Plugin which renders a Velocity template. Your page will be decorated by Fisheye/Crucible so that it has the correct headers and footers. You use Web Item Module Type to place links to your page on existing Fisheye/Crucible pages. These links can pass parameters to your page, so, for instance, you can have a link on the file history page which passes the path of the file being viewed to your page.
Useful Tutorials
You can write a Gutter Renderer Module to provide extra information for each line of source code displayed on the annotated file page.
Useful Tutorials
Fisheye Gutter Renderer Plugin Tutorial
Other resources for Fisheye and Crucible plugin developers:
Rate this page: