001package Torello.HTML.NodeSearch; 002 003import java.util.*; 004 005import Torello.HTML.*; 006import Torello.Java.LV; 007 008/** 009 * {@code Static} methods for building and instantiating an 010 * {@link HNLI}<CODE><</CODE>{@link TagNode}<CODE>></CODE> (which extends the basic 011 * iterator class) for iterating the tags inside of an HTML-{@code Vector}, using 012 * explicitly provided match-specifications. 013 * 014 * <BR /><BR /><EMBED CLASS='external-html' DATA-FILE-ID=TagNodeIterator> 015 */ 016@Torello.JavaDoc.JDHeaderBackgroundImg 017@Torello.JavaDoc.StaticFunctional 018public class TagNodeIterator 019{ 020 private TagNodeIterator() { } 021 022 public static HNLI<TagNode> iter (Vector<? extends HTMLNode> html, TC tagCriteria, String... htmlTags) 023 { 024 final String[] checkedHTMLTags = ARGCHECK.htmlTags(htmlTags); 025 026 return new HNLI<TagNode> 027 (html, tagNode -> tagNode.isTag(tagCriteria, checkedHTMLTags), TagNode.class); 028 } 029 030 public static HNLI<TagNode> exceptIter (Vector<? extends HTMLNode> html, TC tagCriteria, String... htmlTags) 031 { 032 final String[] checkedHTMLTags = ARGCHECK.htmlTags(htmlTags); 033 034 return new HNLI<TagNode> 035 (html, tagNode -> tagNode.isTagExcept(tagCriteria, htmlTags), TagNode.class); 036 } 037}