PageRenderTime 48ms CodeModel.GetById 18ms RepoModel.GetById 1ms app.codeStats 0ms

/src/test/resources/examples/ReScript.groovy

https://bitbucket.org/sorin/jira-plugin-intellij
Groovy | 27 lines | 21 code | 6 blank | 0 comment | 0 complexity | cba07f0b3f0984df370a928f08ded174 MD5 | raw file
  1. package examples
  2. import com.atlassian.jira.ComponentManager
  3. import com.atlassian.jira.issue.fields.CustomField
  4. import com.atlassian.jira.issue.CustomFieldManager
  5. import com.atlassian.jira.issue.MutableIssue
  6. import com.atlassian.jira.issue.util.IssueChangeHolder
  7. import com.atlassian.jira.issue.util.DefaultIssueChangeHolder
  8. import com.atlassian.jira.issue.ModifiedValue
  9. import com.onresolve.jira.groovy.ScriptManager
  10. ComponentManager componentManager = ComponentManager.getInstance()
  11. CustomFieldManager customFieldManager = componentManager.getCustomFieldManager()
  12. MutableIssue theIssue = issue
  13. List<CustomField> customFields = customFieldManager.getCustomFieldObjects(theIssue)
  14. CustomField cfA = customFields.find {it.name = 'A'} // custom field *name* goes here
  15. CustomField cfB = customFields.find {it.name = 'B'}
  16. CustomField cfR = customFields.find {it.name = 'R'}
  17. Float calcValue = (theIssue.getCustomFieldValue(cfA) as Float) / (theIssue.getCustomFieldValue(cfB) as Float)
  18. IssueChangeHolder changeHolder = new DefaultIssueChangeHolder();
  19. cfR.updateValue(null, theIssue, new ModifiedValue(theIssue.getCustomFieldValue(cfR), calcValue), changeHolder);
  20. ScriptManager scriptManager = (ScriptManager) ComponentManager.getComponentInstanceOfType(ScriptManager.class);
  21. scriptManager.getGcl().setShouldRecompile(true)