[Htmlparser-cvs] htmlparser/src/org/htmlparser Attribute.java,1.6,1.7 NodeFactory.java,1.2,1.3 NodeF
Brought to you by:
derrickoswald
From: Derrick O. <der...@us...> - 2005-05-15 11:49:13
|
Update of /cvsroot/htmlparser/htmlparser/src/org/htmlparser In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31674/src/org/htmlparser Modified Files: Attribute.java NodeFactory.java NodeFilter.java Remark.java Tag.java Text.java Log Message: Documentation revamp part four. Remove some checkstyle warnings. Index: Attribute.java =================================================================== RCS file: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/Attribute.java,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** Attribute.java 12 Apr 2005 11:27:40 -0000 1.6 --- Attribute.java 15 May 2005 11:49:03 -0000 1.7 *************** *** 33,43 **** * Holds the name, assignment string, value and quote character. * <p> ! * This class was made deliberately simple. Except for {@link #setRawValue RawValue}, ! * the properties are completely orthogonal, that is: each property is independant ! * of the others. This means you have enough rope here to hang yourself, and ! * it's very easy to create malformed HTML. Where it's obvious, warnings and ! * notes have been provided in the setters javadocs, but it is up to you -- the ! * programmer -- to ensure that the contents of the four fields will yield ! * valid HTML (if that's what you want). * <p> * Be especially mindful of quotes and assignment strings. These are handled --- 33,44 ---- * Holds the name, assignment string, value and quote character. * <p> ! * This class was made deliberately simple. Except for ! * {@link #setRawValue RawValue}, the properties are completely orthogonal, ! * that is: each property is independant of the others. This means you have ! * enough rope here to hang yourself, and it's very easy to create ! * malformed HTML. Where it's obvious, warnings and notes have been provided ! * in the setters javadocs, but it is up to you -- the programmer -- ! * to ensure that the contents of the four fields will yield valid HTML ! * (if that's what you want). * <p> * Be especially mindful of quotes and assignment strings. These are handled *************** *** 142,153 **** * </table> * <br>In words: ! * <br>If Name is null, and Assignment is null, and Quote is zero, it is whitepace and Value has the whitespace text -- value ! * <br>If Name is not null, and both Assignment and Value are null it's a standalone attribute -- name ! * <br>If Name is not null, and Assignment is an equals sign, and Quote is zero it's an empty attribute -- name= ! * <br>If Name is not null, and Assignment is an equals sign, and Value is "" or null, and Quote is ' it's an empty single quoted attribute -- name='' ! * <br>If Name is not null, and Assignment is an equals sign, and Value is "" or null, and Quote is " it's an empty double quoted attribute -- name="" ! * <br>If Name is not null, and Assignment is an equals sign, and Value is something, and Quote is zero it's a naked attribute -- name=value ! * <br>If Name is not null, and Assignment is an equals sign, and Value is something, and Quote is ' it's a single quoted attribute -- name='value' ! * <br>If Name is not null, and Assignment is an equals sign, and Value is something, and Quote is " it's a double quoted attribute -- name="value" * <br>All other states are invalid HTML. * <p> --- 143,167 ---- * </table> * <br>In words: ! * <br>If Name is null, and Assignment is null, and Quote is zero, ! * it's whitepace and Value has the whitespace text -- value ! * <br>If Name is not null, and both Assignment and Value are null ! * it's a standalone attribute -- name ! * <br>If Name is not null, and Assignment is an equals sign, and Quote is zero ! * it's an empty attribute -- name= ! * <br>If Name is not null, and Assignment is an equals sign, ! * and Value is "" or null, and Quote is ' ! * it's an empty single quoted attribute -- name='' ! * <br>If Name is not null, and Assignment is an equals sign, ! * and Value is "" or null, and Quote is " ! * it's an empty double quoted attribute -- name="" ! * <br>If Name is not null, and Assignment is an equals sign, ! * and Value is something, and Quote is zero ! * it's a naked attribute -- name=value ! * <br>If Name is not null, and Assignment is an equals sign, ! * and Value is something, and Quote is ' ! * it's a single quoted attribute -- name='value' ! * <br>If Name is not null, and Assignment is an equals sign, ! * and Value is something, and Quote is " ! * it's a double quoted attribute -- name="value" * <br>All other states are invalid HTML. * <p> *************** *** 177,181 **** * vice versa. Authors may also use numeric character references to * represent double quotes (&#34;) and single quotes (&#39;). ! * For doublequotes authors can also use the character entity reference &quot;.<p> * In certain cases, authors may specify the value of an attribute without * any quotation marks. The attribute value may only contain letters --- 191,196 ---- * vice versa. Authors may also use numeric character references to * represent double quotes (&#34;) and single quotes (&#39;). ! * For doublequotes authors can also use the character entity reference ! * &quot;.<p> * In certain cases, authors may specify the value of an attribute without * any quotation marks. The attribute value may only contain letters *************** *** 186,192 **** * Attribute names are always case-insensitive.<p> * Attribute values are generally case-insensitive. The definition of each ! * attribute in the reference manual indicates whether its value is case-insensitive.<p> * All the attributes defined by this specification are listed in the ! * <a href="http://www.w3.org/TR/html4/index/attributes.html">attribute index</a>.<p> * </cite> * <p> --- 201,209 ---- * Attribute names are always case-insensitive.<p> * Attribute values are generally case-insensitive. The definition of each ! * attribute in the reference manual indicates whether its value is ! * case-insensitive.<p> * All the attributes defined by this specification are listed in the ! * <a href="http://www.w3.org/TR/html4/index/attributes.html">attribute ! * index</a>.<p> * </cite> * <p> *************** *** 226,230 **** /** ! * Create an attribute with the name, assignment string, value and quote given. * If the quote value is zero, assigns the value using {@link #setRawValue} * which sets the quote character to a proper value if necessary. --- 243,247 ---- /** ! * Create an attribute with the name, assignment, value and quote given. * If the quote value is zero, assigns the value using {@link #setRawValue} * which sets the quote character to a proper value if necessary. *************** *** 309,313 **** /** * Create an empty attribute. ! * This will provide "" from the {@link #toString} and * {@link #toString(StringBuffer)} methods. */ --- 326,330 ---- /** * Create an empty attribute. ! * This will provide "" from the {@link #toString} and * {@link #toString(StringBuffer)} methods. */ *************** *** 479,483 **** if (0 != quote) { ! buffer = new StringBuffer (); // todo: can we get the value length? buffer.append (quote); getValue (buffer); --- 496,500 ---- if (0 != quote) { ! buffer = new StringBuffer (); // todo: what is the value length? buffer.append (quote); getValue (buffer); *************** *** 532,541 **** if ((null != value) && (0 != value.trim ().length ())) { ! if (value.startsWith ("'") && value.endsWith ("'") && (2 <= value.length ())) { quote = '\''; value = value.substring (1, value.length () - 1); } ! else if (value.startsWith ("\"") && value.endsWith ("\"") && (2 <= value.length ())) { quote = '"'; --- 549,560 ---- if ((null != value) && (0 != value.trim ().length ())) { ! if (value.startsWith ("'") && value.endsWith ("'") ! && (2 <= value.length ())) { quote = '\''; value = value.substring (1, value.length () - 1); } ! else if (value.startsWith ("\"") && value.endsWith ("\"") ! && (2 <= value.length ())) { quote = '"'; *************** *** 562,566 **** needed = true; } ! else if (!('-' == ch) && !('.' == ch) && !('_' == ch) && !(':' == ch) && !Character.isLetterOrDigit (ch)) { --- 581,585 ---- needed = true; } ! else if (!('-' == ch) && !('.' == ch) && !('_' == ch) && !(':' == ch) && !Character.isLetterOrDigit (ch)) { *************** *** 583,587 **** ref = """; // Translate.encode (quote); // JDK 1.4: value = value.replaceAll ("\"", ref); ! buffer = new StringBuffer (value.length() * 5); for (int i = 0; i < value.length (); i++) { --- 602,607 ---- ref = """; // Translate.encode (quote); // JDK 1.4: value = value.replaceAll ("\"", ref); ! buffer = new StringBuffer ( ! value.length() * (ref.length () - 1)); for (int i = 0; i < value.length (); i++) { *************** *** 600,604 **** setQuote (quote); } ! /** * Predicate to determine if this attribute is whitespace. --- 620,624 ---- setQuote (quote); } ! /** * Predicate to determine if this attribute is whitespace. *************** *** 666,670 **** if (0 != quote) ret += 2; ! return (ret); } --- 686,690 ---- if (0 != quote) ret += 2; ! return (ret); } *************** *** 698,702 **** return (ret.toString ()); } ! /** * Get a text representation of this attribute. --- 718,722 ---- return (ret.toString ()); } ! /** * Get a text representation of this attribute. Index: Remark.java =================================================================== RCS file: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/Remark.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Remark.java 10 Apr 2005 23:20:42 -0000 1.2 --- Remark.java 15 May 2005 11:49:03 -0000 1.3 *************** *** 27,32 **** package org.htmlparser; - import org.htmlparser.Node; - /** * This interface represents a comment in the HTML document. --- 27,30 ---- *************** *** 36,52 **** Node { - /** * Returns the text contents of the comment tag. * @return The contents of the text inside the comment delimiters. */ ! public String getText(); /** * Sets the string contents of the node. ! * If the text has the remark delimiters (<!-- -->), these are stripped off. * @param text The new text for the node. */ ! public void setText (String text); // --- 34,50 ---- Node { /** * Returns the text contents of the comment tag. * @return The contents of the text inside the comment delimiters. */ ! String getText(); /** * Sets the string contents of the node. ! * If the text has the remark delimiters (<!-- -->), ! * these are stripped off. * @param text The new text for the node. */ ! void setText (String text); // *************** *** 54,101 **** // ! // public void accept (org.htmlparser.visitors.NodeVisitor visitor) // { // } ! // ! // public void collectInto (org.htmlparser.util.NodeList collectionList, NodeFilter filter) // { // } ! // ! // public org.htmlparser.util.NodeList getChildren () // { // } ! // // public int getEndPosition () // { // } ! // // public Node getParent () // { // } ! // // public int getStartPosition () // { // } ! // ! // public void setChildren (org.htmlparser.util.NodeList children) // { // } ! // // public void setEndPosition (int position) // { // } ! // // public void setParent (Node node) // { // } ! // // public void setStartPosition (int position) // { // } ! // // public String toHtml () // { // } ! // // public String toPlainTextString () // { --- 52,99 ---- // ! // public void accept (NodeVisitor visitor) // { // } ! // ! // public void collectInto (NodeList collectionList, NodeFilter filter) // { // } ! // ! // public NodeList getChildren () // { // } ! // // public int getEndPosition () // { // } ! // // public Node getParent () // { // } ! // // public int getStartPosition () // { // } ! // ! // public void setChildren (NodeList children) // { // } ! // // public void setEndPosition (int position) // { // } ! // // public void setParent (Node node) // { // } ! // // public void setStartPosition (int position) // { // } ! // // public String toHtml () // { // } ! // // public String toPlainTextString () // { Index: Tag.java =================================================================== RCS file: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/Tag.java,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** Tag.java 10 Apr 2005 23:20:42 -0000 1.5 --- Tag.java 15 May 2005 11:49:03 -0000 1.6 *************** *** 33,37 **** /** ! * This interface represents a tag such as <xxx yyy="zzz"> in the HTML document. * Adds capabilities to a Node that are specific to a tag. */ --- 33,37 ---- /** ! * This interface represents a tag (<xxx yyy="zzz">) in the HTML document. * Adds capabilities to a Node that are specific to a tag. */ *************** *** 44,48 **** * not exist, or is a stand-alone or */ ! public String getAttribute (String name); /** --- 44,48 ---- * not exist, or is a stand-alone or */ ! String getAttribute (String name); /** *************** *** 52,59 **** * @param value The value of the attribute. */ ! public void setAttribute (String key, String value); /** ! * Set attribute with given key, value pair where the value is quoted by quote. * @param key The name of the attribute. * @param value The value of the attribute. --- 52,59 ---- * @param value The value of the attribute. */ ! void setAttribute (String key, String value); /** ! * Set attribute with given key/value pair, the value is quoted by quote. * @param key The name of the attribute. * @param value The value of the attribute. *************** *** 61,65 **** * If zero, it is an unquoted value. */ ! public void setAttribute (String key, String value, char quote); /** --- 61,65 ---- * If zero, it is an unquoted value. */ ! void setAttribute (String key, String value, char quote); /** *************** *** 67,71 **** * @param key The name of the attribute. */ ! public void removeAttribute (String key); /** --- 67,71 ---- * @param key The name of the attribute. */ ! void removeAttribute (String key); /** *************** *** 75,79 **** * not exist. */ ! public Attribute getAttributeEx (String name); /** --- 75,79 ---- * not exist. */ ! Attribute getAttributeEx (String name); /** *************** *** 83,87 **** * @param attribute The attribute to set. */ ! public void setAttributeEx (Attribute attribute); /** --- 83,87 ---- * @param attribute The attribute to set. */ ! void setAttributeEx (Attribute attribute); /** *************** *** 89,93 **** * @return Returns the list of {@link Attribute Attributes} in the tag. */ ! public Vector getAttributesEx (); /** --- 89,93 ---- * @return Returns the list of {@link Attribute Attributes} in the tag. */ ! Vector getAttributesEx (); /** *************** *** 98,103 **** * @param attribs The attribute collection to set. */ ! public void setAttributesEx (Vector attribs); ! /** * Gets the attributes in the tag. --- 98,103 ---- * @param attribs The attribute collection to set. */ ! void setAttributesEx (Vector attribs); ! /** * Gets the attributes in the tag. *************** *** 107,119 **** * <code>String</code> objects available from this <code>Hashtable</code>. * @return Returns a list of name/value pairs representing the attributes. ! * These are not in order, the keys (names) are converted to uppercase and the values ! * are not quoted, even if they need to be. The table <em>will</em> return ! * <code>null</code> if there was no value for an attribute (no equals ! * sign or nothing to the right of the equals sign). A special entry with ! * a key of SpecialHashtable.TAGNAME ("$<TAGNAME>$") holds the tag name. * The conversion to uppercase is performed with an ENGLISH locale. * @deprecated Use getAttributesEx() instead. */ ! public Hashtable getAttributes (); /** --- 107,120 ---- * <code>String</code> objects available from this <code>Hashtable</code>. * @return Returns a list of name/value pairs representing the attributes. ! * These are not in order, the keys (names) are converted to uppercase ! * and the values are not quoted, even if they need to be. ! * The table <em>will</em> return <code>null</code> if there was no value ! * for an attribute (either no equals sign or nothing to the right of the ! * equals sign). A special entry with a key of ! * SpecialHashtable.TAGNAME ("$<TAGNAME>$") holds the tag name. * The conversion to uppercase is performed with an ENGLISH locale. * @deprecated Use getAttributesEx() instead. */ ! Hashtable getAttributes (); /** *************** *** 124,128 **** * @deprecated Use setAttributesEx() instead. */ ! public void setAttributes (Hashtable attributes); /** --- 125,129 ---- * @deprecated Use setAttributesEx() instead. */ ! void setAttributes (Hashtable attributes); /** *************** *** 137,141 **** * @return The tag name. */ ! public String getTagName (); /** --- 138,142 ---- * @return The tag name. */ ! String getTagName (); /** *************** *** 145,149 **** * @param name The tag name. */ ! public void setTagName (String name); /** --- 146,150 ---- * @param name The tag name. */ ! void setTagName (String name); /** *************** *** 152,156 **** * whitespace. */ ! public String getRawTagName (); /** --- 153,157 ---- * whitespace. */ ! String getRawTagName (); /** *************** *** 159,163 **** * <code>false</code> otherwise. */ ! public boolean breaksFlow (); /** --- 160,164 ---- * <code>false</code> otherwise. */ ! boolean breaksFlow (); /** *************** *** 165,177 **** * @return <code>true</code> if this tag is an end tag. */ ! public boolean isEndTag (); ! ! /** ! * Set this tag to be an end tag, or not. ! * Adds or removes the leading slash on the tag name. ! * @param endTag If true, this tag is made into an end tag. ! * Any attributes it may have had are dropped. ! */ ! // public void setEndTag (boolean endTag); /** --- 166,170 ---- * @return <code>true</code> if this tag is an end tag. */ ! boolean isEndTag (); /** *************** *** 179,183 **** * @return true if the last character of the last attribute is a '/'. */ ! public boolean isEmptyXmlTag (); /** --- 172,176 ---- * @return true if the last character of the last attribute is a '/'. */ ! boolean isEmptyXmlTag (); /** *************** *** 187,191 **** * i.e. <tag/>, otherwise removes it. */ ! public void setEmptyXmlTag (boolean emptyXmlTag); /** --- 180,184 ---- * i.e. <tag/>, otherwise removes it. */ ! void setEmptyXmlTag (boolean emptyXmlTag); /** *************** *** 194,198 **** * @return The names to be matched that create tags of this type. */ ! public String[] getIds (); /** --- 187,191 ---- * @return The names to be matched that create tags of this type. */ ! String[] getIds (); /** *************** *** 204,208 **** * @return The names of following tags that stop further scanning. */ ! public String[] getEnders (); /** --- 197,201 ---- * @return The names of following tags that stop further scanning. */ ! String[] getEnders (); /** *************** *** 214,218 **** * @return The names of following end tags that stop further scanning. */ ! public String[] getEndTagEnders (); /** --- 207,211 ---- * @return The names of following end tags that stop further scanning. */ ! String[] getEndTagEnders (); /** *************** *** 221,232 **** * @return The tag that terminates this composite tag, i.e. </HTML>. */ ! public Tag getEndTag (); /** * Set the end tag for this (composite) tag. * For a non-composite tag this is a no-op. ! * @param end The tag that terminates this composite tag, i.e. </HTML>. */ ! public void setEndTag (Tag end); /** --- 214,225 ---- * @return The tag that terminates this composite tag, i.e. </HTML>. */ ! Tag getEndTag (); /** * Set the end tag for this (composite) tag. * For a non-composite tag this is a no-op. ! * @param tag The tag that closes this composite tag, i.e. </HTML>. */ ! void setEndTag (Tag tag); /** *************** *** 234,238 **** * @return The scanner associated with this tag. */ ! public Scanner getThisScanner (); /** --- 227,231 ---- * @return The scanner associated with this tag. */ ! Scanner getThisScanner (); /** *************** *** 240,254 **** * @param scanner The scanner for this tag. */ ! public void setThisScanner (Scanner scanner); ! /** * Get the line number where this tag starts. * @return The (zero based) line number in the page where this tag starts. */ ! public int getStartingLineNumber (); /** * Get the line number where this tag ends. * @return The (zero based) line number in the page where this tag ends. */ ! public int getEndingLineNumber (); } --- 233,247 ---- * @param scanner The scanner for this tag. */ ! void setThisScanner (Scanner scanner); ! /** * Get the line number where this tag starts. * @return The (zero based) line number in the page where this tag starts. */ ! int getStartingLineNumber (); /** * Get the line number where this tag ends. * @return The (zero based) line number in the page where this tag ends. */ ! int getEndingLineNumber (); } Index: Text.java =================================================================== RCS file: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/Text.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** Text.java 10 Apr 2005 23:20:42 -0000 1.2 --- Text.java 15 May 2005 11:49:03 -0000 1.3 *************** *** 27,32 **** package org.htmlparser; - import org.htmlparser.Node; - /** * This interface represents a piece of the content of the HTML document. --- 27,30 ---- *************** *** 38,44 **** /** * Accesses the textual contents of the node. ! * Returns the text of the node. */ ! public String getText (); /** --- 36,42 ---- /** * Accesses the textual contents of the node. ! * @return The text of the node. */ ! String getText (); /** *************** *** 46,50 **** * @param text The new text for the node. */ ! public void setText (String text); // --- 44,48 ---- * @param text The new text for the node. */ ! void setText (String text); // *************** *** 52,111 **** // ! // public void accept (org.htmlparser.visitors.NodeVisitor visitor) // { // } ! // ! // public void collectInto (org.htmlparser.util.NodeList collectionList, NodeFilter filter) // { // } ! // ! // public void doSemanticAction () throws org.htmlparser.util.ParserException // { // } ! // ! // public org.htmlparser.util.NodeList getChildren () // { // } ! // // public int getEndPosition () // { // } ! // // public Node getParent () // { // } ! // // public int getStartPosition () // { // } ! // // public String getText () // { // } ! // ! // public void setChildren (org.htmlparser.util.NodeList children) // { // } ! // // public void setEndPosition (int position) // { // } ! // // public void setParent (Node node) // { // } ! // // public void setStartPosition (int position) // { // } ! // // public void setText (String text) // { // } ! // // public String toHtml () // { // } ! // // public String toPlainTextString () // { --- 50,109 ---- // ! // public void accept (NodeVisitor visitor) // { // } ! // ! // public void collectInto (.NodeList collectionList, NodeFilter filter) // { // } ! // ! // public void doSemanticAction () throws ParserException // { // } ! // ! // public NodeList getChildren () // { // } ! // // public int getEndPosition () // { // } ! // // public Node getParent () // { // } ! // // public int getStartPosition () // { // } ! // // public String getText () // { // } ! // ! // public void setChildren (NodeList children) // { // } ! // // public void setEndPosition (int position) // { // } ! // // public void setParent (Node node) // { // } ! // // public void setStartPosition (int position) // { // } ! // // public void setText (String text) // { // } ! // // public String toHtml () // { // } ! // // public String toPlainTextString () // { Index: NodeFactory.java =================================================================== RCS file: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/NodeFactory.java,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** NodeFactory.java 10 Apr 2005 23:20:42 -0000 1.2 --- NodeFactory.java 15 May 2005 11:49:03 -0000 1.3 *************** *** 29,35 **** import java.util.Vector; - import org.htmlparser.Remark; - import org.htmlparser.Tag; - import org.htmlparser.Text; import org.htmlparser.lexer.Page; import org.htmlparser.util.ParserException; --- 29,32 ---- *************** *** 57,64 **** * @param start The beginning position of the string. * @param end The ending positiong of the string. ! * @throws ParserException If there is a problem encountered in creating the node. * @return A text node comprising the indicated characters from the page. */ ! public Text createStringNode (Page page, int start, int end) throws ParserException; --- 54,62 ---- * @param start The beginning position of the string. * @param end The ending positiong of the string. ! * @throws ParserException If there is a problem encountered ! * when creating the node. * @return A text node comprising the indicated characters from the page. */ ! Text createStringNode (Page page, int start, int end) throws ParserException; *************** *** 69,76 **** * @param start The beginning position of the remark. * @param end The ending positiong of the remark. ! * @throws ParserException If there is a problem encountered in creating the node. * @return A remark node comprising the indicated characters from the page. */ ! public Remark createRemarkNode (Page page, int start, int end) throws ParserException; --- 67,75 ---- * @param start The beginning position of the remark. * @param end The ending positiong of the remark. ! * @throws ParserException If there is a problem encountered ! * when creating the node. * @return A remark node comprising the indicated characters from the page. */ ! Remark createRemarkNode (Page page, int start, int end) throws ParserException; *************** *** 86,93 **** * @param end The ending positiong of the tag. * @param attributes The attributes contained in this tag. ! * @throws ParserException If there is a problem encountered in creating the node. * @return A tag node comprising the indicated characters from the page. */ ! public Tag createTagNode (Page page, int start, int end, Vector attributes) throws ParserException; --- 85,93 ---- * @param end The ending positiong of the tag. * @param attributes The attributes contained in this tag. ! * @throws ParserException If there is a problem encountered ! * when creating the node. * @return A tag node comprising the indicated characters from the page. */ ! Tag createTagNode (Page page, int start, int end, Vector attributes) throws ParserException; Index: NodeFilter.java =================================================================== RCS file: /cvsroot/htmlparser/htmlparser/src/org/htmlparser/NodeFilter.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** NodeFilter.java 5 Apr 2005 00:48:10 -0000 1.3 --- NodeFilter.java 15 May 2005 11:49:03 -0000 1.4 *************** *** 33,39 **** */ public interface NodeFilter ! extends ! Serializable, ! Cloneable { /** --- 33,39 ---- */ public interface NodeFilter ! extends ! Serializable, ! Cloneable { /** |