KickJava   Java API By Example, From Geeks To Geeks.

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


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 com.icesoft.faces.component.UIXhtmlComponent;
37 import org.xml.sax.Attributes JavaDoc;
38
39 import javax.faces.component.UIComponent;
40 import javax.faces.webapp.UIComponentTag;
41
42 /**
43  * This class contains the tag processing logic for all XHTML tags.
44  */

45 public class XhtmlTag extends UIComponentTag {
46     private String JavaDoc tagName;
47     private Attributes JavaDoc attributes;
48     private static int uniqueId = 0;
49
50     /**
51      * RendererType getter.
52      *
53      * @return Renderer class name
54      */

55     public String JavaDoc getRendererType() {
56         return "com.icesoft.faces.Xhtml";
57     }
58
59     /**
60      * ComponentType getter.
61      *
62      * @return XHTML component type
63      */

64     public String JavaDoc getComponentType() {
65         return TagToComponentMap.XHTML_COMPONENT_TYPE;
66     }
67
68
69     protected void setProperties(UIComponent comp) {
70         super.setProperties(comp);
71         UIXhtmlComponent component = (UIXhtmlComponent) comp;
72         component.setTag(getTagName());
73         component.setXmlAttributes(getAttributes());
74         // Assign a unique ID;
75
String JavaDoc id = new String JavaDoc("icesoftXhtmlID" + uniqueId++);
76         component.setId(id);
77         this.setId(id);
78     }
79
80     /**
81      * TagName setter.
82      *
83      * @param tag tag name.
84      */

85     public void setTagName(String JavaDoc tag) {
86         tagName = tag;
87     }
88
89     /**
90      * TagName getter.
91      *
92      * @return tag name
93      */

94     public String JavaDoc getTagName() {
95         return tagName;
96     }
97
98     /**
99      * Attributes setter.
100      *
101      * @param attrib Atrributes.
102      */

103     public void setAttributes(Attributes JavaDoc attrib) {
104         attributes = attrib;
105     }
106
107     /**
108      * Attributes getter.
109      *
110      * @return Attributes
111      */

112     public Attributes JavaDoc getAttributes() {
113         return attributes;
114     }
115 }
116
Popular Tags