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.UIDatePicker;
27 import org.slf4j.Logger;
28 import org.slf4j.LoggerFactory;
29
30
31
32
33
34 public final class DatePickerTag extends TobagoELTag {
35 private static final Logger LOG = LoggerFactory.getLogger(DatePickerTag.class);
36 private javax.el.ValueExpression markup;
37 private String forComponent;
38 private javax.el.ValueExpression tabIndex;
39
40 @Override
41 public String getComponentType() {
42 return UIDatePicker.COMPONENT_TYPE;
43 }
44 @Override
45 public String getRendererType() {
46 return "DatePicker";
47 }
48
49 @Override
50 protected void setProperties(final UIComponent uiComponent) {
51 super.setProperties(uiComponent);
52 final UIDatePicker component = (UIDatePicker) uiComponent;
53 final FacesContext context = FacesContext.getCurrentInstance();
54 final Application application = context.getApplication();
55 if (markup != null) {
56 if (!markup.isLiteralText()) {
57 component.setValueExpression("markup", markup);
58 } else {
59 component.setMarkup(org.apache.myfaces.tobago.context.Markup.valueOf(markup.getExpressionString()));
60 }
61 }
62 if (forComponent != null) {
63 component.setFor(forComponent);
64 }
65
66 if (tabIndex != null) {
67 if (!tabIndex.isLiteralText()) {
68 component.setValueExpression("tabIndex", tabIndex);
69 } else {
70 component.setTabIndex(Integer.parseInt(tabIndex.getExpressionString()));
71 }
72 }
73 }
74
75 public javax.el.ValueExpression getMarkup() {
76 return markup;
77 }
78
79 public void setMarkup(final javax.el.ValueExpression markup) {
80 this.markup = markup;
81 }
82
83 public String getFor() {
84 return forComponent;
85 }
86
87 public void setFor(final String forComponent) {
88 this.forComponent = forComponent;
89 }
90
91 public javax.el.ValueExpression getTabIndex() {
92 return tabIndex;
93 }
94
95 public void setTabIndex(final javax.el.ValueExpression tabIndex) {
96 this.tabIndex = tabIndex;
97 }
98
99
100
101 @Override
102 public void release() {
103 super.release();
104 markup = null;
105 forComponent = null;
106 tabIndex = null;
107 }
108 }