1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 package org.apache.struts.taglib.bean;
22
23 import javax.servlet.jsp.tagext.TagData;
24 import javax.servlet.jsp.tagext.TagExtraInfo;
25 import javax.servlet.jsp.tagext.VariableInfo;
26
27 /**
28 * Implementation of <code>TagExtraInfo</code> for the <b>define</b> tag,
29 * identifying the scripting object(s) to be made visible.
30 *
31 * @version $Rev: 471754 $ $Date: 2004-10-16 12:38:42 -0400 (Sat, 16 Oct 2004)
32 * $
33 */
34 public class DefineTei extends TagExtraInfo {
35 /**
36 * Return information about the scripting variables to be created.
37 */
38 public VariableInfo[] getVariableInfo(TagData data) {
39 String type = (String) data.getAttribute("type");
40 Object name = data.getAttribute("name");
41 Object value = data.getAttribute("value");
42
43 if (type == null) {
44 if ((value != null) || (name == null)) {
45 type = "java.lang.String";
46 } else {
47 type = "java.lang.Object";
48 }
49 }
50
51 return new VariableInfo[] {
52 new VariableInfo(data.getAttributeString("id"), type, true,
53 VariableInfo.AT_END)
54 };
55 }
56 }