Package Torello.HTML.NodeSearch
Class CommentNodeIterator
- java.lang.Object
-
- Torello.HTML.NodeSearch.CommentNodeIterator
-
public class CommentNodeIterator extends java.lang.Object
CommentNodeIterator 🠞CommentNode:This implies thatTagNodeandTextNodeelements are ignored completely in this search, and instead, the "comments" between the<!--and-->symbols - which are all instances ofCommentNode, are searched.
Iterator:This means that javaIterator's(extension ofjava.util.ListIterator<E>) are returned, rather than simple-results or vectors of results.Iterator'smake updating aVector<HTMLNode>much easier (by avoiding the problems caused by stale index-pointers), and usually simply many of the retrieval & removal operations when large HTMLTABLEandUL / OLare involved.
Staticmethods for building and instantiating anHNLI<CommentNode>(which extends the basic iterator class) for iterating the comments inside of an HTML-Vector, with the help of a user-providedString-Predicate, Regular Expression orTextComparitoras a search-specifier.
Methods Available
Method Explanation iterator (...) The returns an HNLI<CommentNode>that will iterate through eachCommentNodefound in the vectorized-page parameter'html'that matches the specified search-criteria.exceptIterator (...) The returns an HNLI<CommentNode>that will iterate through eachCommentNodefound in the vectorized-page parameter'html'that does not match the specified search-criteria.Method Parameters
Parameter Explanation Vector<? extends HTMLNode> htmlThis represents any vectorized HTML page, sub-page, or list of partial-elements. TextComparitor tcWORKS WITH: This parameter utilizes / works-with parameter String... compareStrto perform the requested comparisons. The comparisons are computed using theString 'body'field of aCommentNode.
When this parameter is present in the method-signature parameter-list, the decision of whether aCommentNodeis to be included in the search result-set is defined by this parameter'sFunctionalInterface Predicate 'test'method.TextComparitoris a JavaBiPredicate<String, String[]>which compares its firstString-parameter against theString'sin its second.Pattern pThese parameters reference Java's "Regular Expression" processing engine. If the method-signature includes the java.util.regex.Patternparameter, the search-loops will use the standard Regular-ExpressionPatternmatching routine:p.asPredicate().test(comment_node.body)when deciding whichCommentNode's"match" this search-criteria.Predicate<String> pWhen this parameter is present in the method-signature parameter-list, the decision of whether a CommentNodeis to be included in the search result-set are made by the results of the JavaPredicate.test(String)method.
Specifically:p.test(comment_node.body)String... compareStrWORKS WITH: This parameter works in coordination with the TextComparitor tcparameter. This parameter supplies theString'swith which the comparisons of theCommentNode.bodyfield may be compared.Return Values:
-
HNLI<CommentNode>which returns, one-at-a-time,CommentNode'sout of the vectorized-HTML page parameter'html'which matched.
Hi-Lited Source-Code:- View Here: Torello/HTML/NodeSearch/CommentNodeIterator.java
- Open New Browser-Tab: Torello/HTML/NodeSearch/CommentNodeIterator.java
File Size: 2,146 Bytes Line Count: 43 '\n' Characters Found
Stateless Class:This class neither contains any program-state, nor can it be instantiated. The@StaticFunctionalAnnotation may also be called 'The Spaghetti Report'.Static-Functionalclasses are, essentially, C-Styled Files, without any constructors or non-static member fields. It is a concept very similar to the Java-Bean's@StatelessAnnotation.
- 1 Constructor(s), 1 declared private, zero-argument constructor
- 6 Method(s), 6 declared static
- 0 Field(s)
-
-
Method Summary
Iterate Matches Modifier and Type Method static HNLI<CommentNode>iterator(Vector<? extends HTMLNode> html, Predicate<String> p)static HNLI<CommentNode>iterator(Vector<? extends HTMLNode> html, Pattern p)static HNLI<CommentNode>iterator(Vector<? extends HTMLNode> html, TextComparitor tc, String... compareStr)Iterate Non-Matches Modifier and Type Method static HNLI<CommentNode>exceptIterator(Vector<? extends HTMLNode> html, Predicate<String> p)static HNLI<CommentNode>exceptIterator(Vector<? extends HTMLNode> html, Pattern p)static HNLI<CommentNode>exceptIterator(Vector<? extends HTMLNode> html, TextComparitor tc, String... compareStr)
-