This functionality is based on a Listener, a Manager and a set of JellyTag.
The objective is to maintain an update date reserved to specific fields.
Usage is :
<JiraJelly xmlns:jira="jelly:com.atlassian.jira.jelly.MinyaaToolsTagLib"> <jira:AddNotifiableFields project-key="TST" > <jira:AddNotifiableField name="description" value="true" /> <jira:AddNotifiableField name="summary" value="true" /> <jira:AddNotifiableField name="myCustomfield" value="true" /> <jira:AddNotifiableField name="project.notifiable.customfield" value="NotableUpdateDate" /> </jira:AddNotifiableFields > </JiraJelly>
Script above defines 3 fields as notifiable fields. In case of update of the Summary or Description fields or the custom field - identified myCustomfield - the customfield date - identified NotableUpdateDate - has to be updated.
This listener takes in charge the comparison of Updated Fields against fields defined as Notifiable. If at least of them is updated, then an update of norifiableDate is delegate to the NotifiableUpdateManager.
Usage is :
com.atlassian.jira.event.issue.NotifiableUpdateIssueEventListener