Classes in this File | Line Coverage | Branch Coverage | Complexity | ||||
SwapCondition |
|
| 2.5;2.5 |
1 | package org.kuali.student.common.ui.client.configurable.mvc.multiplicity; | |
2 | ||
3 | import java.util.List; | |
4 | import java.util.Map; | |
5 | ||
6 | import org.kuali.student.common.ui.client.configurable.mvc.FieldDescriptor; | |
7 | import org.kuali.student.common.ui.client.configurable.mvc.sections.GroupSection; | |
8 | import org.kuali.student.common.ui.client.widgets.list.KSSelectItemWidgetAbstract; | |
9 | import org.kuali.student.common.ui.client.widgets.search.KSPicker; | |
10 | ||
11 | import com.google.gwt.user.client.ui.Widget; | |
12 | ||
13 | 0 | public class SwapCondition { |
14 | private FieldDescriptor fd; | |
15 | private String value; | |
16 | public FieldDescriptor getFd() { | |
17 | 0 | return fd; |
18 | } | |
19 | public void setFd(FieldDescriptor fd) { | |
20 | 0 | this.fd = fd; |
21 | 0 | } |
22 | public String getValue() { | |
23 | 0 | return value; |
24 | } | |
25 | public void setValue(String value) { | |
26 | 0 | this.value = value; |
27 | 0 | } |
28 | private String nvl(String inString) { | |
29 | 0 | return (inString == null)? "" : inString; |
30 | } | |
31 | public boolean evaluate(GroupSection section, Map<String, String> helperFieldKeys) { | |
32 | 0 | boolean result = false; |
33 | 0 | String widgetValue = null; |
34 | // could have used getField(String) method here but the getField method does | |
35 | // not check the fields of sub sections. | |
36 | 0 | List<FieldDescriptor> sectionFds = section.getFields(); |
37 | 0 | Widget fieldWidget = null; |
38 | 0 | if (sectionFds != null) { |
39 | 0 | for (FieldDescriptor sectionFd : sectionFds) { |
40 | 0 | if (sectionFd.getFieldKey().equals(helperFieldKeys.get(fd.getFieldKey()))) { |
41 | 0 | fieldWidget = sectionFd.getFieldWidget(); |
42 | } | |
43 | } | |
44 | } | |
45 | 0 | if (fieldWidget != null && fieldWidget instanceof KSSelectItemWidgetAbstract) { |
46 | 0 | widgetValue = ((KSSelectItemWidgetAbstract)fieldWidget).getSelectedItem(); |
47 | 0 | } else if (fieldWidget != null && fieldWidget instanceof KSPicker) { |
48 | 0 | Widget inputWidget = ((KSPicker)fieldWidget).getInputWidget(); |
49 | 0 | widgetValue = ((KSSelectItemWidgetAbstract)inputWidget).getSelectedItem(); |
50 | } | |
51 | 0 | if (nvl(this.value).equals(widgetValue)) { |
52 | 0 | result = true; |
53 | } | |
54 | 0 | return result; |
55 | } | |
56 | } |