1 package com.atlassian.jira.plugin.issueoperation;
2
3 import java.util.Map;
4
5 import org.apache.log4j.Category;
6 import org.dom4j.Element;
7
8 import com.atlassian.jira.plugin.MakeConditionHelper;
9 import com.atlassian.jira.security.JiraAuthenticationContext;
10 import com.atlassian.plugin.Plugin;
11 import com.atlassian.plugin.PluginParseException;
12 import com.atlassian.plugin.web.Condition;
13
14
15
16
17
18
19
20
21 public class ExtendedIssueOperationModuleDescriptor extends IssueOperationModuleDescriptor {
22
23 protected static Category log = Category.getInstance(ExtendedIssueOperationModuleDescriptor.class);
24
25 protected MakeConditionHelper makeConditionHelper;
26
27 protected Condition condition;
28
29 public ExtendedIssueOperationModuleDescriptor(JiraAuthenticationContext _authenticationContext) {
30 super(_authenticationContext);
31 makeConditionHelper = MakeConditionHelper.getInstance();
32 }
33
34
35
36
37
38 public void init(Plugin plugin, Element element) throws PluginParseException {
39 super.init(plugin, element);
40 condition = makeConditionHelper.makeConditions(element, MakeConditionHelper.COMPOSITE_TYPE_AND);
41 if (condition == null) {
42 log.warn("No condition defined for [" + plugin.getKey() + ":" + element.getName() + "]. True Condition is assumed");
43 condition = new Condition() {
44 public boolean shouldDisplay(Map context) {
45 return true;
46 }
47 public void init(Map params) throws PluginParseException {
48 }
49 };
50 }
51 }
52
53
54
55
56 public Condition getCondition() {
57 return condition;
58 }
59 }