1 package org.apache.myfaces.tobago.taglib.extension12;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 import org.apache.myfaces.tobago.apt.annotation.ExtensionTag;
21 import org.apache.myfaces.tobago.apt.annotation.Tag;
22 import org.apache.myfaces.tobago.apt.annotation.TagAttribute;
23 import org.apache.myfaces.tobago.apt.annotation.UIComponentTagAttribute;
24 import org.apache.myfaces.tobago.apt.annotation.DynamicExpression;
25 import org.apache.myfaces.tobago.internal.taglib.SelectOneRadioTag;
26
27 import javax.servlet.jsp.JspException;
28
29
30
31
32
33
34
35 @Tag(name = "selectOneRadio")
36 @ExtensionTag(baseClassName = "org.apache.myfaces.tobago.internal.taglib.SelectOneRadioTag")
37 public class SelectOneRadioExtensionTag extends TobagoExtensionBodyTagSupport {
38
39 private javax.el.ValueExpression required;
40 private javax.el.ValueExpression value;
41 private javax.el.MethodExpression valueChangeListener;
42 private javax.el.ValueExpression disabled;
43 private javax.el.ValueExpression readonly;
44 private javax.el.ValueExpression onchange;
45 private javax.el.ValueExpression inline;
46 private javax.el.ValueExpression label;
47 private javax.el.ValueExpression rendered;
48 private javax.el.ValueExpression binding;
49 private javax.el.ValueExpression tip;
50 private javax.el.MethodExpression validator;
51 private javax.el.ValueExpression converter;
52 private javax.el.ValueExpression labelWidth;
53 private javax.el.ValueExpression tabIndex;
54 private javax.el.ValueExpression focus;
55 private javax.el.ValueExpression renderRange;
56 private javax.el.ValueExpression validatorMessage;
57 private javax.el.ValueExpression converterMessage;
58 private javax.el.ValueExpression requiredMessage;
59 private javax.el.ValueExpression markup;
60
61 private LabelExtensionTag labelTag;
62 private SelectOneRadioTag selectOneRadioTag;
63
64 @Override
65 public int doStartTag() throws JspException {
66
67 labelTag = new LabelExtensionTag();
68 labelTag.setPageContext(pageContext);
69 if (label != null) {
70 labelTag.setValue(label);
71 }
72 if (tip != null) {
73 labelTag.setTip(tip);
74 }
75 if (rendered != null) {
76 labelTag.setRendered(rendered);
77 }
78 if (labelWidth != null) {
79 labelTag.setColumns(createStringValueExpression(labelWidth.getExpressionString() + ";*"));
80 }
81 if (markup != null) {
82 labelTag.setMarkup(markup);
83 }
84 labelTag.setParent(getParent());
85 labelTag.doStartTag();
86
87 selectOneRadioTag = new SelectOneRadioTag();
88 selectOneRadioTag.setPageContext(pageContext);
89 if (value != null) {
90 selectOneRadioTag.setValue(value);
91 }
92 if (valueChangeListener != null) {
93 selectOneRadioTag.setValueChangeListener(valueChangeListener);
94 }
95 if (validator != null) {
96 selectOneRadioTag.setValidator(validator);
97 }
98 if (converter != null) {
99 selectOneRadioTag.setConverter(converter);
100 }
101 if (binding != null) {
102 selectOneRadioTag.setBinding(binding);
103 }
104 if (onchange != null) {
105 selectOneRadioTag.setOnchange(onchange);
106 }
107 if (disabled != null) {
108 selectOneRadioTag.setDisabled(disabled);
109 }
110 if (inline != null) {
111 selectOneRadioTag.setInline(inline);
112 }
113 if (focus != null) {
114 selectOneRadioTag.setFocus(focus);
115 }
116 if (id != null) {
117 selectOneRadioTag.setId(id);
118 }
119 if (readonly != null) {
120 selectOneRadioTag.setReadonly(readonly);
121 }
122 if (required != null) {
123 selectOneRadioTag.setRequired(required);
124 }
125 if (tabIndex != null) {
126 selectOneRadioTag.setTabIndex(tabIndex);
127 }
128 if (renderRange != null) {
129 selectOneRadioTag.setRenderRange(renderRange);
130 }
131 if (validatorMessage != null) {
132 selectOneRadioTag.setValidatorMessage(validatorMessage);
133 }
134 if (converterMessage != null) {
135 selectOneRadioTag.setConverterMessage(converterMessage);
136 }
137 if (requiredMessage != null) {
138 selectOneRadioTag.setRequiredMessage(requiredMessage);
139 }
140 if (markup != null) {
141 selectOneRadioTag.setMarkup(markup);
142 }
143
144 selectOneRadioTag.setParent(labelTag);
145 selectOneRadioTag.doStartTag();
146
147 return super.doStartTag();
148 }
149
150 @Override
151 public int doEndTag() throws JspException {
152 selectOneRadioTag.doEndTag();
153 labelTag.doEndTag();
154 return super.doEndTag();
155 }
156
157 @Override
158 public void release() {
159 super.release();
160 binding = null;
161 onchange = null;
162 disabled = null;
163 inline = null;
164 label = null;
165 labelWidth = null;
166 converter = null;
167 validator = null;
168 readonly = null;
169 rendered = null;
170 required = null;
171 tip = null;
172 value = null;
173 valueChangeListener = null;
174 tabIndex = null;
175 selectOneRadioTag = null;
176 labelTag = null;
177 focus = null;
178 renderRange = null;
179 validatorMessage = null;
180 converterMessage = null;
181 requiredMessage = null;
182 markup = null;
183 }
184
185
186
187
188
189
190 @TagAttribute
191 @UIComponentTagAttribute(type = "java.lang.Boolean")
192 public void setRequired(javax.el.ValueExpression required) {
193 this.required = required;
194 }
195
196
197
198
199 @TagAttribute
200 @UIComponentTagAttribute(type = "java.lang.Object")
201 public void setValue(javax.el.ValueExpression value) {
202 this.value = value;
203 }
204
205
206
207
208
209
210
211
212
213 @TagAttribute
214 @UIComponentTagAttribute(
215 type = {},
216 expression = DynamicExpression.METHOD_BINDING_REQUIRED,
217 methodSignature = "javax.faces.event.ValueChangeEvent")
218 public void setValueChangeListener(javax.el.MethodExpression valueChangeListener) {
219 this.valueChangeListener = valueChangeListener;
220 }
221
222
223
224
225
226
227
228 @TagAttribute
229 @UIComponentTagAttribute(type = {},
230 expression = DynamicExpression.METHOD_BINDING,
231 methodSignature = { "javax.faces.context.FacesContext", "javax.faces.component.UIComponent", "java.lang.Object" })
232 public void setValidator(javax.el.MethodExpression validator) {
233 this.validator = validator;
234 }
235
236
237
238
239 @TagAttribute()
240 @UIComponentTagAttribute(type = "java.lang.Boolean", defaultValue = "false")
241 public void setDisabled(javax.el.ValueExpression disabled) {
242 this.disabled = disabled;
243 }
244
245
246
247
248 @TagAttribute
249 @UIComponentTagAttribute(type = "java.lang.Boolean")
250 public void setReadonly(javax.el.ValueExpression readonly) {
251 this.readonly = readonly;
252 }
253
254
255
256
257 @TagAttribute
258 @UIComponentTagAttribute()
259 public void setOnchange(javax.el.ValueExpression onchange) {
260 this.onchange = onchange;
261 }
262
263
264
265
266
267
268
269
270
271
272 @TagAttribute
273 @UIComponentTagAttribute(type = "javax.faces.convert.Converter",
274 expression = DynamicExpression.VALUE_BINDING)
275 public void setConverter(javax.el.ValueExpression converter) {
276 this.converter = converter;
277 }
278
279
280
281 @TagAttribute
282 @UIComponentTagAttribute(type = "java.lang.Boolean")
283 public void setInline(javax.el.ValueExpression inline) {
284 this.inline = inline;
285 }
286
287
288
289
290
291 @TagAttribute
292 @UIComponentTagAttribute()
293 public void setLabel(javax.el.ValueExpression label) {
294 this.label = label;
295 }
296
297
298
299
300
301 @TagAttribute
302 @UIComponentTagAttribute(type = "java.lang.Boolean", defaultValue = "true")
303 public void setRendered(javax.el.ValueExpression rendered) {
304 this.rendered = rendered;
305 }
306
307
308
309
310
311 @TagAttribute
312 @UIComponentTagAttribute(type = "javax.faces.component.UIComponent")
313 public void setBinding(javax.el.ValueExpression binding) {
314 this.binding = binding;
315 }
316
317
318
319
320 @TagAttribute
321 @UIComponentTagAttribute()
322 public void setTip(javax.el.ValueExpression tip) {
323 this.tip = tip;
324 }
325
326
327
328
329
330
331 @TagAttribute
332 @UIComponentTagAttribute()
333 public void setLabelWidth(javax.el.ValueExpression labelWidth) {
334 this.labelWidth = labelWidth;
335 }
336
337 @TagAttribute
338 @UIComponentTagAttribute(type = "java.lang.Integer")
339 public void setTabIndex(javax.el.ValueExpression tabIndex) {
340 this.tabIndex = tabIndex;
341 }
342
343
344
345
346 @TagAttribute
347 @UIComponentTagAttribute(type = "java.lang.Boolean")
348 public void setFocus(javax.el.ValueExpression focus) {
349 this.focus = focus;
350 }
351
352
353
354
355 @TagAttribute
356 @UIComponentTagAttribute()
357 public void setRenderRange(javax.el.ValueExpression renderRange) {
358 this.renderRange = renderRange;
359 }
360
361
362
363
364 @TagAttribute
365 @UIComponentTagAttribute()
366 public void setValidatorMessage(javax.el.ValueExpression validatorMessage) {
367 this.validatorMessage = validatorMessage;
368 }
369
370
371
372
373 @TagAttribute
374 @UIComponentTagAttribute()
375 public void setConverterMessage(javax.el.ValueExpression converterMessage) {
376 this.converterMessage = converterMessage;
377 }
378
379
380
381
382 @TagAttribute
383 @UIComponentTagAttribute()
384 public void setRequiredMessage(javax.el.ValueExpression requiredMessage) {
385 this.requiredMessage = requiredMessage;
386 }
387
388
389
390
391
392 @TagAttribute
393 @UIComponentTagAttribute(defaultValue = "none", type = "java.lang.String[]")
394 public void setMarkup(javax.el.ValueExpression markup) {
395 this.markup = markup;
396 }
397
398 }