1 /***
2 * Licensed under the Artistic License; you may not use this file
3 * except in compliance with the License.
4 * You may obtain a copy of the License at
5 *
6 * http://displaytag.sourceforge.net/license.html
7 *
8 * THIS PACKAGE IS PROVIDED "AS IS" AND WITHOUT ANY EXPRESS OR
9 * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
10 * WARRANTIES OF MERCHANTIBILITY AND FITNESS FOR A PARTICULAR PURPOSE.
11 */
12 package org.displaytag.tags.el;
13
14 import java.beans.IntrospectionException;
15 import java.beans.PropertyDescriptor;
16 import java.beans.SimpleBeanInfo;
17 import java.util.ArrayList;
18 import java.util.List;
19
20 import org.displaytag.tags.ColumnTag;
21
22
23 /***
24 * BeanInfo descriptor for the <code>ELColumnTag</code> class. Unevaluated EL expression has to be kept separately
25 * from the evaluated value, since the JSP compiler can choose to reuse different tag instances if they received the
26 * same original attribute values, and the JSP compiler can choose to not re-call the setter methods.
27 * @author Fabrizio Giustina
28 * @version $Revision: 1.5 $ ($Author: fgiust $)
29 */
30 public class ELColumnTagBeanInfo extends SimpleBeanInfo
31 {
32
33 /***
34 * @see java.beans.BeanInfo#getPropertyDescriptors()
35 */
36 public PropertyDescriptor[] getPropertyDescriptors()
37 {
38 List proplist = new ArrayList();
39
40 try
41 {
42 proplist.add(new PropertyDescriptor("autolink",
43 ELColumnTag.class, null, "setAutolink"));
44 proplist.add(new PropertyDescriptor("class",
45 ELColumnTag.class, null, "setClass"));
46 proplist.add(new PropertyDescriptor("decorator",
47 ELColumnTag.class, null, "setDecorator"));
48 proplist.add(new PropertyDescriptor("group",
49 ELColumnTag.class, null, "setGroup"));
50 proplist.add(new PropertyDescriptor("headerClass",
51 ELColumnTag.class, null, "setHeaderClass"));
52 proplist.add(new PropertyDescriptor("href",
53 ELColumnTag.class, null, "setHref"));
54 proplist.add(new PropertyDescriptor("maxLength",
55 ELColumnTag.class, null, "setMaxLength"));
56 proplist.add(new PropertyDescriptor("maxWords",
57 ELColumnTag.class, null, "setMaxWords"));
58 proplist.add(new PropertyDescriptor("media",
59 ELColumnTag.class, null, "setMedia"));
60 proplist.add(new PropertyDescriptor("nulls",
61 ELColumnTag.class, null, "setNulls"));
62 proplist.add(new PropertyDescriptor("paramId",
63 ELColumnTag.class, null, "setParamId"));
64 proplist.add(new PropertyDescriptor("paramName",
65 ELColumnTag.class, null, "setParamName"));
66 proplist.add(new PropertyDescriptor("paramProperty",
67 ELColumnTag.class, null, "setParamProperty"));
68 proplist.add(new PropertyDescriptor("paramScope",
69 ELColumnTag.class, null, "setParamScope"));
70 proplist.add(new PropertyDescriptor("property",
71 ELColumnTag.class, null, "setProperty"));
72 proplist.add(new PropertyDescriptor("sortable",
73 ELColumnTag.class, null, "setSortable"));
74 proplist.add(new PropertyDescriptor("style",
75 ELColumnTag.class, null, "setStyle"));
76 proplist.add(new PropertyDescriptor("title",
77 ELColumnTag.class, null, "setTitle"));
78 proplist.add(new PropertyDescriptor("titleKey",
79 ELColumnTag.class, null, "setTitleKey"));
80 proplist.add(new PropertyDescriptor("url",
81 ELColumnTag.class, null, "setUrl"));
82 proplist.add(new PropertyDescriptor("sortProperty",
83 ELColumnTag.class, null, "setSortProperty"));
84
85
86 proplist.add(new PropertyDescriptor("sort",
87 ELColumnTag.class, null, "setSortable"));
88 proplist.add(new PropertyDescriptor("styleClass",
89 ELColumnTag.class, null, "setStyle"));
90 proplist.add(new PropertyDescriptor("headerStyleClass",
91 ELColumnTag.class, null, "setHeaderClass"));
92 proplist.add(new PropertyDescriptor("width",
93 ColumnTag.class, null, "setWidth"));
94 proplist.add(new PropertyDescriptor("align",
95 ColumnTag.class, null, "setAlign"));
96 proplist.add(new PropertyDescriptor("background",
97 ColumnTag.class, null, "setBackground"));
98 proplist.add(new PropertyDescriptor("bgcolor",
99 ColumnTag.class, null, "setBgcolor"));
100 proplist.add(new PropertyDescriptor("height",
101 ColumnTag.class, null, "setHeight"));
102 proplist.add(new PropertyDescriptor("nowrap",
103 ColumnTag.class, null, "setNowrap"));
104 proplist.add(new PropertyDescriptor("valign",
105 ColumnTag.class, null, "setValign"));
106
107 }
108 catch (IntrospectionException ex)
109 {
110
111 }
112
113 PropertyDescriptor[] result = new PropertyDescriptor[proplist.size()];
114 return ((PropertyDescriptor[]) proplist.toArray(result));
115 }
116
117 }