001package Torello.HTML;
002
003/**
004 * If a programmer is writing code, and expecting an HTML-Page {@code Vector} position to contain a
005 * specific type of {@code HTMLNode}, and it is not found anywhere on that page, sub-page or
006 * sub-section, then this exception may be used.
007 *
008 * <BR /><BR /><B CLASS=JDDescLabel>For Instance:</B>
009 * 
010 * <BR />When attempting to insert a {@code favicon} image into a Vectorized-HTML page, first, the 
011 * page's {@code header} section must be found.  This is to make sure that the favicon {@code URL}
012 * is inserted into the appropriate location on the page, so as not to confuse a web-browser.
013 * 
014 * <BR /><BR /><I>If that page is lacking an HTML {@code <HEAD>} section</I> then throwing a
015 * {@code NodeNotFoundException} is appropriate.
016 */
017public class NodeNotFoundException extends NodeExpectedException
018{
019    /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUIDEX> */
020    public static final long serialVersionUID = 1;
021
022    /** Constructs a {@code NodeNotFoundException} with no detail message. */
023    public NodeNotFoundException()
024    { super(); }
025
026    /**
027     * Constructs a {@code NodeNotFoundException} with the specified detail message.
028     * @param message the detail message.
029     */
030    public NodeNotFoundException(String message)
031    { super(message); }
032
033    /**
034     * Constructs a new exception with the specified detail message and cause.
035     * 
036     * <BR /><BR /><B CLASS=JDDescLabel>NOTE:</B>
037     * 
038     * <BR /><BR />The detail message associated with cause is not automatically incorporated into
039     * this exception's detail message.
040     * 
041     * @param message The detail message (which is saved for later retrieval by the
042     * {@code Throwable.getMessage()} method).
043     * 
044     * @param cause the cause (which is saved for later retrieval by the {@code Throwable.getCause()}
045     * method).  (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
046     */
047    public NodeNotFoundException(String message, Throwable cause)
048    { super(message, cause); }
049
050    /**
051     * Constructs a new exception with the specified cause and a detail message of
052     * {@code (cause==null ? null : cause.toString())} (which typically contains the class and
053     * detail message of cause).
054     * 
055     * <BR /><BR /> This constructor is useful for exceptions that are little more than wrappers
056     * for other throwables.
057     * 
058     * @param cause The cause (which is saved for later retrieval by the {@code Throwable.getCause()}
059     * method).  (A null value is permitted, and indicates that the cause is nonexistent or unknown.)
060     */
061    public NodeNotFoundException(Throwable cause)
062    { super(cause); }
063}