1 package org.apache.fulcrum.intake.model;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import org.apache.fulcrum.intake.IntakeException;
23 import org.apache.fulcrum.intake.validator.ShortValidator;
24
25
26
27
28
29
30 public class ShortField
31 extends Field<Short>
32 {
33
34 private static final long serialVersionUID = -5838127207028024370L;
35
36
37
38
39
40
41
42
43 public ShortField(XmlField field, Group group)
44 throws IntakeException
45 {
46 super(field, group);
47 }
48
49
50
51
52
53
54 @Override
55 public void setDefaultValue(String prop)
56 {
57 defaultValue = null;
58
59 if (prop == null)
60 {
61 return;
62 }
63
64 defaultValue = Short.valueOf(prop);
65 }
66
67
68
69
70
71
72
73
74
75 @Override
76 public void setEmptyValue(String prop)
77 {
78 emptyValue = null;
79
80 if (prop == null)
81 {
82 return;
83 }
84
85 emptyValue = Short.valueOf(prop);
86 }
87
88
89
90
91
92
93
94
95
96
97
98 @Override
99 protected Object getSafeEmptyValue()
100 {
101 if (isMultiValued())
102 {
103 return new short[0];
104 }
105 else
106 {
107 return (null == getEmptyValue())
108 ? Short.valueOf((short) 0) : getEmptyValue();
109 }
110 }
111
112
113
114
115
116
117 @Override
118 protected String getDefaultValidator()
119 {
120 return ShortValidator.class.getName();
121 }
122
123
124
125
126 @Override
127 protected void doSetValue()
128 {
129 if (isMultiValued())
130 {
131 Integer[] inputs = parser.getIntObjects(getKey());
132 short[] values = new short[inputs.length];
133
134 for (int i = 0; i < inputs.length; i++)
135 {
136 values[i] = inputs[i] == null
137 ? getEmptyValue().shortValue()
138 : inputs[i].shortValue();
139 }
140
141 setTestValue(values);
142 }
143 else
144 {
145 Integer value = parser.getIntObject(getKey());
146
147 if (value == null)
148 {
149 setTestValue(getEmptyValue());
150 }
151 else
152 {
153 setTestValue(Short.valueOf(value.shortValue()));
154 }
155 }
156 }
157 }