1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.kuali.rice.krms.impl.ui;
17
18 import org.kuali.rice.krad.data.DataObjectService;
19 import org.kuali.rice.krad.service.KRADServiceLocator;
20 import org.kuali.rice.krms.api.repository.proposition.PropositionParameterType;
21 import org.kuali.rice.krms.api.repository.proposition.PropositionType;
22 import org.kuali.rice.krms.impl.repository.PropositionBo;
23 import org.kuali.rice.krms.impl.repository.PropositionParameterBo;
24 import org.kuali.rice.krms.impl.repository.TermBo;
25
26 import java.util.List;
27
28
29
30
31
32
33
34 public class SimplePropositionNode extends RuleTreeNode {
35 private static final long serialVersionUID = -629088492909384804L;
36 public static final String NODE_TYPE = "ruleTreeNode simplePropositionNode";
37 protected String parameterDisplayString;
38
39
40 public SimplePropositionNode() {
41 }
42
43 public SimplePropositionNode(PropositionBo proposition){
44 super(proposition);
45 setupParameterDisplayString();
46 }
47
48 private void setupParameterDisplayString(){
49 if (proposition != null && proposition.getPropositionTypeCode().equalsIgnoreCase(PropositionType.SIMPLE.getCode())){
50
51
52 List<PropositionParameterBo> parameters = proposition.getParameters();
53 if (parameters != null && parameters.size() == 3){
54 setParameterDisplayString(getParamValue(parameters.get(0))
55 + " " + getParamValue(parameters.get(2))
56 + " " + getParamValue(parameters.get(1)));
57 } else {
58
59 }
60 }
61 }
62
63 private String getParamValue(PropositionParameterBo prop){
64 if (PropositionParameterType.TERM.getCode().equalsIgnoreCase(prop.getParameterType())){
65
66 String termId = prop.getValue();
67 TermBo term = null;
68 if (termId!=null) {
69 term = getDataObjectService().find(TermBo.class,termId);
70 }
71 if (term!=null){
72 return term.getSpecification().getName();
73 }
74 return "";
75 } else {
76 return prop.getValue();
77 }
78 }
79
80
81
82 public String getParameterDisplayString() {
83 return this.parameterDisplayString;
84 }
85
86
87
88
89 public void setParameterDisplayString(String parameterDisplayString) {
90 this.parameterDisplayString = parameterDisplayString;
91 }
92
93 public DataObjectService getDataObjectService() {
94 return KRADServiceLocator.getDataObjectService();
95 }
96
97 }