KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > enhydra > apache > html > dom > HTMLFormElementImpl


1 /*
2  * The Apache Software License, Version 1.1
3  *
4  *
5  * Copyright (c) 1999,2000 The Apache Software Foundation. All rights
6  * reserved.
7  *
8  * Redistribution and use in source and binary forms, with or without
9  * modification, are permitted provided that the following conditions
10  * are met:
11  *
12  * 1. Redistributions of source code must retain the above copyright
13  * notice, this list of conditions and the following disclaimer.
14  *
15  * 2. Redistributions in binary form must reproduce the above copyright
16  * notice, this list of conditions and the following disclaimer in
17  * the documentation and/or other materials provided with the
18  * distribution.
19  *
20  * 3. The end-user documentation included with the redistribution,
21  * if any, must include the following acknowledgment:
22  * "This product includes software developed by the
23  * Apache Software Foundation (http://www.apache.org/)."
24  * Alternately, this acknowledgment may appear in the software itself,
25  * if and wherever such third-party acknowledgments normally appear.
26  *
27  * 4. The names "Xerces" and "Apache Software Foundation" must
28  * not be used to endorse or promote products derived from this
29  * software without prior written permission. For written
30  * permission, please contact apache@apache.org.
31  *
32  * 5. Products derived from this software may not be called "Apache",
33  * nor may "Apache" appear in their name, without prior written
34  * permission of the Apache Software Foundation.
35  *
36  * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
37  * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
38  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
39  * DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
40  * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
41  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
42  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
43  * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
44  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
45  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
46  * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
47  * SUCH DAMAGE.
48  * ====================================================================
49  *
50  * This software consists of voluntary contributions made by many
51  * individuals on behalf of the Apache Software Foundation and was
52  * originally based on software copyright (c) 1999, International
53  * Business Machines, Inc., http://www.apache.org. For more
54  * information on the Apache Software Foundation, please see
55  * <http://www.apache.org/>.
56  */

57 package org.enhydra.apache.html.dom;
58
59
60 import org.enhydra.apache.xerces.dom.ElementImpl;
61 import org.w3c.dom.Node JavaDoc;
62 import org.w3c.dom.NodeList JavaDoc;
63 import org.w3c.dom.html.HTMLCollection;
64 import org.w3c.dom.html.HTMLFormElement;
65
66
67 /**
68  * @version $Revision: 1.3 $ $Date: 2005/01/26 08:28:44 $
69  * @author <a HREF="mailto:arkin@exoffice.com">Assaf Arkin</a>
70  * @see org.w3c.dom.html.HTMLFormElement
71  * @see ElementImpl
72  */

73 public class HTMLFormElementImpl
74     extends HTMLElementImpl
75     implements HTMLFormElement
76 {
77
78     
79     public HTMLCollection getElements()
80     {
81         if ( _elements == null )
82             _elements = new HTMLCollectionImpl( this, HTMLCollectionImpl.ELEMENT );
83         return _elements;
84     }
85   
86
87     public int getLength()
88     {
89         return getElements().getLength();
90     }
91   
92   
93     public String JavaDoc getName()
94     {
95         return getAttribute( "name" );
96     }
97     
98     
99     public void setName( String JavaDoc name )
100     {
101         setAttribute( "name", name );
102     }
103
104     
105     public String JavaDoc getAcceptCharset()
106     {
107         return getAttribute( "accept-charset" );
108     }
109     
110     
111     public void setAcceptCharset( String JavaDoc acceptCharset )
112     {
113         setAttribute( "accept-charset", acceptCharset );
114     }
115
116   
117       public String JavaDoc getAction()
118     {
119         return getAttribute( "action" );
120     }
121     
122     
123     public void setAction( String JavaDoc action )
124     {
125         setAttribute( "action", action );
126     }
127   
128   
129       public String JavaDoc getEnctype()
130     {
131         return getAttribute( "enctype" );
132     }
133     
134     
135     public void setEnctype( String JavaDoc enctype )
136     {
137         setAttribute( "enctype", enctype );
138     }
139
140     
141       public String JavaDoc getMethod()
142     {
143         return capitalize( getAttribute( "method" ) );
144     }
145     
146     
147     public void setMethod( String JavaDoc method )
148     {
149         setAttribute( "method", method );
150     }
151   
152   
153     public String JavaDoc getTarget()
154     {
155         return getAttribute( "target" );
156     }
157     
158     
159     public void setTarget( String JavaDoc target )
160     {
161         setAttribute( "target", target );
162     }
163
164     
165     public void submit()
166     {
167         // No scripting in server-side DOM. This method is moot.
168
}
169
170     
171     public void reset()
172     {
173         // No scripting in server-side DOM. This method is moot.
174
}
175
176     /*
177      * Explicit implementation of getChildNodes() to avoid problems with
178      * overriding the getLength() method hidden in the super class.
179      */

180     public NodeList JavaDoc getChildNodes() {
181         return getChildNodesUnoptimized();
182     }
183     
184     /**
185      * Explicit implementation of cloneNode() to ensure that cache used
186      * for getElements() gets cleared.
187      */

188     public Node JavaDoc cloneNode( boolean deep ) {
189         HTMLFormElementImpl clonedNode = (HTMLFormElementImpl)super.cloneNode( deep );
190         clonedNode._elements = null;
191         return clonedNode;
192     }
193
194     /**
195      * Constructor requires owner document.
196      *
197      * @param owner The owner HTML document
198      */

199     public HTMLFormElementImpl( HTMLDocumentImpl owner, String JavaDoc name )
200     {
201         super( owner, name );
202     }
203   
204     
205     /**
206      * Collection of all elements contained in this FORM.
207      */

208     private HTMLCollectionImpl _elements;
209     
210 }
211
212
Popular Tags