1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 package org.apache.myfaces.tobago.internal.taglib;
21
22 import javax.faces.application.Application;
23 import javax.faces.component.UIComponent;
24 import javax.faces.context.FacesContext;
25 import org.apache.commons.lang.StringUtils;
26 import org.apache.myfaces.tobago.component.UIIn;
27 import org.slf4j.Logger;
28 import org.slf4j.LoggerFactory;
29
30
31
32
33
34 public final class InTag extends TobagoELTag {
35 private static final Logger LOG = LoggerFactory.getLogger(InTag.class);
36 private javax.el.ValueExpression validatorMessage;
37 private javax.el.ValueExpression markup;
38 private javax.el.MethodExpression validator;
39 private javax.el.ValueExpression tabIndex;
40 private javax.el.ValueExpression password;
41 private javax.el.ValueExpression tip;
42 private javax.el.MethodExpression suggestMethod;
43 private javax.el.ValueExpression suggestDelay;
44 private javax.el.MethodExpression valueChangeListener;
45 private javax.el.ValueExpression converter;
46 private javax.el.ValueExpression inline;
47 private javax.el.ValueExpression value;
48 private javax.el.ValueExpression focus;
49 private javax.el.ValueExpression suggestMinChars;
50 private javax.el.ValueExpression required;
51 private javax.el.ValueExpression converterMessage;
52 private javax.el.ValueExpression label;
53 private javax.el.ValueExpression autocomplete;
54 private javax.el.ValueExpression requiredMessage;
55 private javax.el.ValueExpression onchange;
56 private javax.el.ValueExpression readonly;
57 private javax.el.ValueExpression disabled;
58
59 @Override
60 public String getComponentType() {
61 return UIIn.COMPONENT_TYPE;
62 }
63 @Override
64 public String getRendererType() {
65 return "In";
66 }
67
68 @Override
69 protected void setProperties(final UIComponent uiComponent) {
70 super.setProperties(uiComponent);
71 final UIIn component = (UIIn) uiComponent;
72 final FacesContext context = FacesContext.getCurrentInstance();
73 final Application application = context.getApplication();
74 if (validatorMessage != null) {
75 component.setValueExpression("validatorMessage", validatorMessage);
76 }
77
78 if (markup != null) {
79 if (!markup.isLiteralText()) {
80 component.setValueExpression("markup", markup);
81 } else {
82 component.setMarkup(org.apache.myfaces.tobago.context.Markup.valueOf(markup.getExpressionString()));
83 }
84 }
85 if (validator != null) {
86 component.addValidator(new javax.faces.validator.MethodExpressionValidator(validator));
87 }
88 if (tabIndex != null) {
89 if (!tabIndex.isLiteralText()) {
90 component.setValueExpression("tabIndex", tabIndex);
91 } else {
92 component.setTabIndex(Integer.parseInt(tabIndex.getExpressionString()));
93 }
94 }
95 if (password != null) {
96 if (!password.isLiteralText()) {
97 component.setValueExpression("password", password);
98 } else {
99 component.setPassword(Boolean.parseBoolean(password.getExpressionString()));
100 }
101 }
102 if (tip != null) {
103 component.setValueExpression("tip", tip);
104 }
105
106 if (suggestMethod != null) {
107 component.setSuggestMethodExpression(suggestMethod);
108 }
109 if (suggestDelay != null) {
110 if (!suggestDelay.isLiteralText()) {
111 component.setValueExpression("suggestDelay", suggestDelay);
112 } else {
113 component.setSuggestDelay(Integer.parseInt(suggestDelay.getExpressionString()));
114 }
115 }
116 if (valueChangeListener != null) {
117 component.addValueChangeListener(new javax.faces.event.MethodExpressionValueChangeListener(valueChangeListener));
118 }
119 if (converter != null) {
120 if (!converter.isLiteralText()) {
121 component.setValueExpression("converter", converter);
122 } else {
123 component.setConverter(application.createConverter(converter.getExpressionString()));
124 }
125 }
126 if (inline != null) {
127 if (!inline.isLiteralText()) {
128 component.setValueExpression("inline", inline);
129 } else {
130 component.setInline(Boolean.parseBoolean(inline.getExpressionString()));
131 }
132 }
133 if (value != null) {
134 component.setValueExpression("value", value);
135 }
136
137 if (focus != null) {
138 if (!focus.isLiteralText()) {
139 component.setValueExpression("focus", focus);
140 } else {
141 component.setFocus(Boolean.parseBoolean(focus.getExpressionString()));
142 }
143 }
144 if (suggestMinChars != null) {
145 if (!suggestMinChars.isLiteralText()) {
146 component.setValueExpression("suggestMinChars", suggestMinChars);
147 } else {
148 component.setSuggestMinChars(Integer.parseInt(suggestMinChars.getExpressionString()));
149 }
150 }
151 if (required != null) {
152 if (!required.isLiteralText()) {
153 component.setValueExpression("required", required);
154 } else {
155 component.setRequired(Boolean.parseBoolean(required.getExpressionString()));
156 }
157 }
158 if (converterMessage != null) {
159 component.setValueExpression("converterMessage", converterMessage);
160 }
161
162 if (label != null) {
163 component.setValueExpression("label", label);
164 }
165
166 if (autocomplete != null) {
167 if (!autocomplete.isLiteralText()) {
168 component.setValueExpression("autocomplete", autocomplete);
169 } else {
170 component.setAutocomplete(Boolean.parseBoolean(autocomplete.getExpressionString()));
171 }
172 }
173 if (requiredMessage != null) {
174 component.setValueExpression("requiredMessage", requiredMessage);
175 }
176
177 if (onchange != null) {
178 component.setValueExpression("onchange", onchange);
179 }
180
181 if (readonly != null) {
182 if (!readonly.isLiteralText()) {
183 component.setValueExpression("readonly", readonly);
184 } else {
185 component.setReadonly(Boolean.parseBoolean(readonly.getExpressionString()));
186 }
187 }
188 if (disabled != null) {
189 if (!disabled.isLiteralText()) {
190 component.setValueExpression("disabled", disabled);
191 } else {
192 component.setDisabled(Boolean.parseBoolean(disabled.getExpressionString()));
193 }
194 }
195 }
196
197 public javax.el.ValueExpression getValidatorMessage() {
198 return validatorMessage;
199 }
200
201 public void setValidatorMessage(final javax.el.ValueExpression validatorMessage) {
202 this.validatorMessage = validatorMessage;
203 }
204
205 public javax.el.ValueExpression getMarkup() {
206 return markup;
207 }
208
209 public void setMarkup(final javax.el.ValueExpression markup) {
210 this.markup = markup;
211 }
212
213 public javax.el.MethodExpression getValidator() {
214 return validator;
215 }
216
217 public void setValidator(final javax.el.MethodExpression validator) {
218 this.validator = validator;
219 }
220
221 public javax.el.ValueExpression getTabIndex() {
222 return tabIndex;
223 }
224
225 public void setTabIndex(final javax.el.ValueExpression tabIndex) {
226 this.tabIndex = tabIndex;
227 }
228
229 public javax.el.ValueExpression getPassword() {
230 return password;
231 }
232
233 public void setPassword(final javax.el.ValueExpression password) {
234 this.password = password;
235 }
236
237 public javax.el.ValueExpression getTip() {
238 return tip;
239 }
240
241 public void setTip(final javax.el.ValueExpression tip) {
242 this.tip = tip;
243 }
244
245 public javax.el.MethodExpression getSuggestMethod() {
246 return suggestMethod;
247 }
248
249 public void setSuggestMethod(final javax.el.MethodExpression suggestMethod) {
250 this.suggestMethod = suggestMethod;
251 }
252
253 public javax.el.ValueExpression getSuggestDelay() {
254 return suggestDelay;
255 }
256
257 public void setSuggestDelay(final javax.el.ValueExpression suggestDelay) {
258 this.suggestDelay = suggestDelay;
259 }
260
261 public javax.el.MethodExpression getValueChangeListener() {
262 return valueChangeListener;
263 }
264
265 public void setValueChangeListener(final javax.el.MethodExpression valueChangeListener) {
266 this.valueChangeListener = valueChangeListener;
267 }
268
269 public javax.el.ValueExpression getConverter() {
270 return converter;
271 }
272
273 public void setConverter(final javax.el.ValueExpression converter) {
274 this.converter = converter;
275 }
276
277 public javax.el.ValueExpression getInline() {
278 return inline;
279 }
280
281 public void setInline(final javax.el.ValueExpression inline) {
282 this.inline = inline;
283 }
284
285 public javax.el.ValueExpression getValue() {
286 return value;
287 }
288
289 public void setValue(final javax.el.ValueExpression value) {
290 this.value = value;
291 }
292
293 public javax.el.ValueExpression getFocus() {
294 return focus;
295 }
296
297 public void setFocus(final javax.el.ValueExpression focus) {
298 this.focus = focus;
299 }
300
301 public javax.el.ValueExpression getSuggestMinChars() {
302 return suggestMinChars;
303 }
304
305 public void setSuggestMinChars(final javax.el.ValueExpression suggestMinChars) {
306 this.suggestMinChars = suggestMinChars;
307 }
308
309 public javax.el.ValueExpression getRequired() {
310 return required;
311 }
312
313 public void setRequired(final javax.el.ValueExpression required) {
314 this.required = required;
315 }
316
317 public javax.el.ValueExpression getConverterMessage() {
318 return converterMessage;
319 }
320
321 public void setConverterMessage(final javax.el.ValueExpression converterMessage) {
322 this.converterMessage = converterMessage;
323 }
324
325 public javax.el.ValueExpression getLabel() {
326 return label;
327 }
328
329 public void setLabel(final javax.el.ValueExpression label) {
330 this.label = label;
331 }
332
333 public javax.el.ValueExpression getAutocomplete() {
334 return autocomplete;
335 }
336
337 public void setAutocomplete(final javax.el.ValueExpression autocomplete) {
338 this.autocomplete = autocomplete;
339 }
340
341 public javax.el.ValueExpression getRequiredMessage() {
342 return requiredMessage;
343 }
344
345 public void setRequiredMessage(final javax.el.ValueExpression requiredMessage) {
346 this.requiredMessage = requiredMessage;
347 }
348
349 public javax.el.ValueExpression getOnchange() {
350 return onchange;
351 }
352
353 public void setOnchange(final javax.el.ValueExpression onchange) {
354 this.onchange = onchange;
355 }
356
357 public javax.el.ValueExpression getReadonly() {
358 return readonly;
359 }
360
361 public void setReadonly(final javax.el.ValueExpression readonly) {
362 this.readonly = readonly;
363 }
364
365 public javax.el.ValueExpression getDisabled() {
366 return disabled;
367 }
368
369 public void setDisabled(final javax.el.ValueExpression disabled) {
370 this.disabled = disabled;
371 }
372
373
374
375 @Override
376 public void release() {
377 super.release();
378 validatorMessage = null;
379 markup = null;
380 validator = null;
381 tabIndex = null;
382 password = null;
383 tip = null;
384 suggestMethod = null;
385 suggestDelay = null;
386 valueChangeListener = null;
387 converter = null;
388 inline = null;
389 value = null;
390 focus = null;
391 suggestMinChars = null;
392 required = null;
393 converterMessage = null;
394 label = null;
395 autocomplete = null;
396 requiredMessage = null;
397 onchange = null;
398 readonly = null;
399 disabled = null;
400 }
401 }