/src/test/resources/examples/ReScript.groovy
Groovy | 27 lines | 21 code | 6 blank | 0 comment | 0 complexity | cba07f0b3f0984df370a928f08ded174 MD5 | raw file
- package examples
-
- import com.atlassian.jira.ComponentManager
- import com.atlassian.jira.issue.fields.CustomField
- import com.atlassian.jira.issue.CustomFieldManager
- import com.atlassian.jira.issue.MutableIssue
- import com.atlassian.jira.issue.util.IssueChangeHolder
- import com.atlassian.jira.issue.util.DefaultIssueChangeHolder
- import com.atlassian.jira.issue.ModifiedValue
- import com.onresolve.jira.groovy.ScriptManager
-
-
- ComponentManager componentManager = ComponentManager.getInstance()
- CustomFieldManager customFieldManager = componentManager.getCustomFieldManager()
- MutableIssue theIssue = issue
- List<CustomField> customFields = customFieldManager.getCustomFieldObjects(theIssue)
- CustomField cfA = customFields.find {it.name = 'A'} // custom field *name* goes here
- CustomField cfB = customFields.find {it.name = 'B'}
- CustomField cfR = customFields.find {it.name = 'R'}
-
- Float calcValue = (theIssue.getCustomFieldValue(cfA) as Float) / (theIssue.getCustomFieldValue(cfB) as Float)
-
- IssueChangeHolder changeHolder = new DefaultIssueChangeHolder();
- cfR.updateValue(null, theIssue, new ModifiedValue(theIssue.getCustomFieldValue(cfR), calcValue), changeHolder);
-
- ScriptManager scriptManager = (ScriptManager) ComponentManager.getComponentInstanceOfType(ScriptManager.class);
- scriptManager.getGcl().setShouldRecompile(true)