- All Implemented Interfaces:
public class TagNodeIndex extends NodeIndex<TagNode> implements java.lang.CharSequence, java.io.Serializable, java.lang.CloneableThis is a simple data-class whose primary reason for development was to provide a way for the NodeSearch Package classes to simultaneously return both a
TagNodeinstance, and a
Vector-index location (for that node) - at the same time - when searching HTML web-pages for HTML tags.
TagNodeIndex: TagNode 'Plus' the Vector-IndexThis class is just an extremely simple data-structure-class used, generally, for returning both the index of an instance-node of class
TagNodeinside a vectorized-html web-page, and also the
TagNodeitself - simultaneously.
The constructor of this class accepts an index, and a
TagNode,and saves both of these datum as
public, finalfields of this class. The
'Peek'suite of search methods in
package NodeSearchreturn instances of this class.
This class implements the
interface. This means that it may be used for efficiently modifying, updating, or replacing many segments of an HTML-Page using the method:
ReplaceNodes.r(Vector<HTMLNode>, Iterable<Replaceable>, boolean)
Whenever the Java HTML JAR Library's HTML-
Vector'sare being used to modify or update an HTML-Page, it can sometimes help to remember that shifting elements in a list (in this package a
Vector<HTMLNode>) can be somewhat inefficient if there are going to be many nodes inserted and removed. This is because inserting a node into a
Vectordoes, indeed, require shifting all nodes that occur after the insertion index-location forward!
By first extracting HTML nodes or sub-lists using the NodeSearch-Package
Peek-Operations(all of which return
Replaceableinstances), a user can operate on much smaller HTML Pieces. Once all updates have been made, the original
Vectorcan be instantly rebuilt using the efficient updater method (link above).
Replaceableinterface provides quite a number of HTML Modification methods to add, change or eliminate the original HTML found on a page. Note that when operating on a piece of HTML that has been extracted, the effects of stale index-pointers become irrelevant!
Methods: interface java.lang.Cloneable Modifier and Type Method
Methods inherited from class Torello.HTML.NodeIndex
addAllInto, addAllInto, charAt, currentNodes, currentSize, equals, firstCurrentNode, hashCode, lastCurrentNode, length, newNodeIndex, originalLocationEnd, originalLocationStart, originalSize, subSequence, toString, update
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.CharSequence
charAt, chars, codePoints, length, subSequence, toString
public static final long serialVersionUIDThis fulfils the SerialVersion UID requirement for all classes that implement Java's
interface java.io.Serializable. Using the
SerializableImplementation offered by java is very easy, and can make saving program state when debugging a lot easier. It can also be used in place of more complicated systems like "hibernate" to store data as well.
- See Also:
- Constant Field Values
- Exact Field Declaration Expression:
public static final long serialVersionUID = 1;
public TagNodeIndex(int index, TagNode tagNode)Constructor for this class.
index- This is the index of vectorized-page that contains
tagNode- This is the
TagNodebeing stored in this data-structure.
indexis negative, this exception is thrown.
- Exact Constructor Body:
public TagNodeIndex clone()Java's
interface Cloneablerequirements. This instantiates a new
- A new
TagNodeIndexwhose internal fields are identical to this one.
- Exact Method Body:
return new TagNodeIndex(this.index, this.n);