KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > com > icesoft > faces > webapp > parser > TagWire


1 /*
2  * Version: MPL 1.1/GPL 2.0/LGPL 2.1
3  *
4  * "The contents of this file are subject to the Mozilla Public License
5  * Version 1.1 (the "License"); you may not use this file except in
6  * compliance with the License. You may obtain a copy of the License at
7  * http://www.mozilla.org/MPL/
8  *
9  * Software distributed under the License is distributed on an "AS IS"
10  * basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
11  * License for the specific language governing rights and limitations under
12  * the License.
13  *
14  * The Original Code is ICEfaces 1.5 open source software code, released
15  * November 5, 2006. The Initial Developer of the Original Code is ICEsoft
16  * Technologies Canada, Corp. Portions created by ICEsoft are Copyright (C)
17  * 2004-2006 ICEsoft Technologies Canada, Corp. All Rights Reserved.
18  *
19  * Contributor(s): _____________________.
20  *
21  * Alternatively, the contents of this file may be used under the terms of
22  * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"
23  * License), in which case the provisions of the LGPL License are
24  * applicable instead of those above. If you wish to allow use of your
25  * version of this file only under the terms of the LGPL License and not to
26  * allow others to use your version of this file under the MPL, indicate
27  * your decision by deleting the provisions above and replace them with
28  * the notice and other provisions required by the LGPL License. If you do
29  * not delete the provisions above, a recipient may use your version of
30  * this file under either the MPL or the LGPL License."
31  *
32  */

33
34 package com.icesoft.faces.webapp.parser;
35
36 import org.xml.sax.Attributes JavaDoc;
37
38 import javax.servlet.jsp.tagext.Tag JavaDoc;
39 import java.util.ArrayList JavaDoc;
40 import java.util.List JavaDoc;
41
42 /**
43  * This class is needed to help wire the tags together. Because tags do not
44  * contain lists of their children, we manage that here. This object gets
45  * placed on the digester stack after the tag object itself. When the tag rule
46  * fires, it wires everything up so that we can traverse the tree of tags
47  * later.
48  *
49  * @author Steve Maryka
50  */

51 public class TagWire {
52     private Tag JavaDoc tag;
53     private Attributes JavaDoc attributes;
54     private List JavaDoc children = new ArrayList JavaDoc();
55
56     /**
57      * MyTag setter.
58      *
59      * @param tag tag
60      */

61     public void setTag(Tag JavaDoc tag) {
62         this.tag = tag;
63     }
64
65     /**
66      * MyTag getter.
67      *
68      * @return tag
69      */

70     public Tag JavaDoc getTag() {
71         return tag;
72     }
73
74     /**
75      * Adds a child wire to this tag wire.
76      *
77      * @param child child to add.
78      */

79     public void addChild(TagWire child) {
80         children.add(child);
81     }
82
83     /**
84      * Returns vector of children.
85      *
86      * @return Vector of children tag wires.
87      */

88     public List JavaDoc getChildren() {
89         return children;
90     }
91
92     /**
93      * Attributes getter.
94      *
95      * @return tag attributes
96      */

97     public Attributes JavaDoc getAttributes() {
98         return attributes;
99     }
100
101     /**
102      * Attribute setter.
103      *
104      * @param attrs attributes
105      */

106     public void setAttributes(Attributes JavaDoc attrs) {
107         attributes = attrs;
108     }
109 }
110
Popular Tags