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
21 /**
22 * BeanInfo descriptor for the <code>ELCaptionTag</code> class. Unevaluated EL expression has to be kept separately
23 * from the evaluated value, since the JSP compiler can choose to reuse different tag instances if they received the
24 * same original attribute values, and the JSP compiler can choose to not re-call the setter methods.
25 * @author Fabrizio Giustina
26 * @version $Revision: 1081 $ ($Author: fgiust $)
27 */
28 public class ELCaptionTagBeanInfo extends SimpleBeanInfo
29 {
30
31 /**
32 * @see java.beans.BeanInfo#getPropertyDescriptors()
33 */
34 public PropertyDescriptor[] getPropertyDescriptors()
35 {
36 List proplist = new ArrayList();
37
38 try
39 {
40 proplist.add(new PropertyDescriptor("class", //$NON-NLS-1$
41 ELCaptionTag.class, null, "setClass")); //$NON-NLS-1$
42 proplist.add(new PropertyDescriptor("dir", //$NON-NLS-1$
43 ELCaptionTag.class, null, "setDir")); //$NON-NLS-1$
44 proplist.add(new PropertyDescriptor("id", //$NON-NLS-1$
45 ELCaptionTag.class, null, "setId")); //$NON-NLS-1$
46 proplist.add(new PropertyDescriptor("lang", //$NON-NLS-1$
47 ELCaptionTag.class, null, "setLang")); //$NON-NLS-1$
48 proplist.add(new PropertyDescriptor("media", //$NON-NLS-1$
49 ELColumnTag.class, null, "setMedia")); //$NON-NLS-1$
50 proplist.add(new PropertyDescriptor("style", //$NON-NLS-1$
51 ELCaptionTag.class, null, "setStyle")); //$NON-NLS-1$
52 proplist.add(new PropertyDescriptor("title", //$NON-NLS-1$
53 ELCaptionTag.class, null, "setTitle")); //$NON-NLS-1$
54 }
55 catch (IntrospectionException ex)
56 {
57 // ignore, this should never happen
58 }
59
60 PropertyDescriptor[] result = new PropertyDescriptor[proplist.size()];
61 return ((PropertyDescriptor[]) proplist.toArray(result));
62 }
63
64 }