/src/main/resources/com/onresolve/jira/groovy/canned/workflow/conditions/SimpleScriptedCondition.groovy
Groovy | 61 lines | 45 code | 15 blank | 1 comment | 0 complexity | ab98cea33ea05e4065e0624530fad010 MD5 | raw file
- package com.onresolve.jira.groovy.canned.workflow.conditions
-
- import com.atlassian.jira.ComponentManager
- import com.atlassian.jira.util.ErrorCollection
-
- import com.onresolve.jira.groovy.canned.CannedScript
- import org.apache.log4j.Category
- import com.onresolve.jira.groovy.canned.utils.ConditionUtils
- import com.atlassian.jira.issue.MutableIssue
- import com.opensymphony.util.TextUtils
-
- class SimpleScriptedCondition implements CannedScript{
-
- ComponentManager componentManager = ComponentManager.getInstance()
- Category log = Category.getInstance(SimpleScriptedCondition.class)
- def projectManager = componentManager.getProjectManager()
-
- String getName() {
- return "Simple scripted condition"
- }
-
- public String getHelpUrl() {
- "https://studio.plugins.atlassian.com/wiki/display/GRV/Built-In+Scripts#Built-InScripts-Simplescriptedcondition"
- }
-
- String getDescription() {
- "Runs a simple embedded script to find out whether to show the action or not"
- }
-
- List getCategories() {
- ["Condition"]
- }
-
- List getParameters(Map params) {
- [
- ConditionUtils.getConditionParameter(),
- ]
-
- }
-
- public ErrorCollection doValidate(Map params, boolean forPreview) {
- // todo: try parse script
- null
- }
-
- Map doScript(Map params) {
- MutableIssue issue = params['issue'] as MutableIssue
-
- Boolean doIt = ConditionUtils.processCondition(params[ConditionUtils.FIELD_CONDITION] as String, issue, false, params)
- params['passesCondition'] = doIt
- return params
- }
-
- String getDescription(Map params, boolean forPreview) {
- getName() + " : Checks script: <pre>" + TextUtils.htmlEncode(params[ConditionUtils.FIELD_CONDITION] as String) + "</pre>"
- }
-
- public Boolean isFinalParamsPage(Map params) {
- true
- }
- }