/*
 * Copyright (c) 1999 World Wide Web Consortium
 * (Massachusetts Institute of Technology, Institut National de Recherche
 *  en Informatique et en Automatique, Keio University).
 * All Rights Reserved. http://www.w3.org/Consortium/Legal/
 *
 * The original version of this interface comes from SAX :
 * http://www.megginson.com/SAX/
 *
 * $Id: CSSParseException.java 477010 2006-11-20 02:54:38Z mrglavas $
 */
package org.w3c.css.sac;

Encapsulate a CSS parse error or warning.

This exception will include information for locating the error in the original CSS document. Note that although the application will receive a CSSParseException as the argument to the handlers in the ErrorHandler interface, the application is not actually required to throw the exception; instead, it can simply read the information in it and take a different action.

Since this exception is a subclass of CSSException, it inherits the ability to wrap another exception.

Author: Philippe Le Hegaret
Version:$Revision: 477010 $
/** * Encapsulate a CSS parse error or warning. * * <p>This exception will include information for locating the error * in the original CSS document. Note that although the application * will receive a CSSParseException as the argument to the handlers * in the ErrorHandler interface, the application is not actually * required to throw the exception; instead, it can simply read the * information in it and take a different action.</p> * * <p>Since this exception is a subclass of CSSException, it * inherits the ability to wrap another exception.</p> * * @version $Revision: 477010 $ * @author Philippe Le Hegaret */
public class CSSParseException extends CSSException { private String uri; private int lineNumber; private int columnNumber;
Create a new CSSParseException from a message and a Locator.

This constructor is especially useful when an application is creating its own exception from within a DocumentHandler callback.

Params:
  • message – The error or warning message.
  • locator – The locator object for the error or warning.
See Also:
/** * Create a new CSSParseException from a message and a Locator. * * <p>This constructor is especially useful when an application is * creating its own exception from within a DocumentHandler * callback.</p> * * @param message The error or warning message. * @param locator The locator object for the error or warning. * @see Locator * @see Parser#setLocale */
public CSSParseException(String message, Locator locator) { super(message); this.code = SAC_SYNTAX_ERR; this.uri = locator.getURI(); this.lineNumber = locator.getLineNumber(); this.columnNumber = locator.getColumnNumber(); }
Wrap an existing exception in a CSSParseException.

This constructor is especially useful when an application is creating its own exception from within a DocumentHandler callback, and needs to wrap an existing exception that is not a subclass of CSSException.

Params:
  • message – The error or warning message, or null to use the message from the embedded exception.
  • locator – The locator object for the error or warning.
  • e – Any exception
See Also:
/** * Wrap an existing exception in a CSSParseException. * * <p>This constructor is especially useful when an application is * creating its own exception from within a DocumentHandler * callback, and needs to wrap an existing exception that is not a * subclass of CSSException.</p> * * @param message The error or warning message, or null to * use the message from the embedded exception. * @param locator The locator object for the error or warning. * @param e Any exception * @see Locator * @see Parser#setLocale */
public CSSParseException(String message, Locator locator, Exception e) { super(SAC_SYNTAX_ERR, message, e); this.uri = locator.getURI(); this.lineNumber = locator.getLineNumber(); this.columnNumber = locator.getColumnNumber(); }
Create a new CSSParseException.

This constructor is most useful for parser writers.

the parser must resolve the URI fully before creating the exception.

Params:
  • message – The error or warning message.
  • uri – The URI of the document that generated the error or warning.
  • lineNumber – The line number of the end of the text that caused the error or warning.
  • columnNumber – The column number of the end of the text that cause the error or warning.
See Also:
/** * Create a new CSSParseException. * * <p>This constructor is most useful for parser writers.</p> * * <p>the parser must resolve the URI fully before creating the exception.</p> * * @param message The error or warning message. * @param uri The URI of the document that generated the error or warning. * @param lineNumber The line number of the end of the text that * caused the error or warning. * @param columnNumber The column number of the end of the text that * cause the error or warning. * @see Parser#setLocale */
public CSSParseException(String message, String uri, int lineNumber, int columnNumber) { super(message); this.code = SAC_SYNTAX_ERR; this.uri = uri; this.lineNumber = lineNumber; this.columnNumber = columnNumber; }
Create a new CSSParseException with an embedded exception.

This constructor is most useful for parser writers who need to wrap an exception that is not a subclass of CSSException.

The parser must resolve the URI fully before creating the exception.

Params:
  • message – The error or warning message, or null to use the message from the embedded exception.
  • uri – The URI of the document that generated the error or warning.
  • lineNumber – The line number of the end of the text that caused the error or warning.
  • columnNumber – The column number of the end of the text that cause the error or warning.
  • e – Another exception to embed in this one.
See Also:
/** * Create a new CSSParseException with an embedded exception. * * <p>This constructor is most useful for parser writers who * need to wrap an exception that is not a subclass of * CSSException.</p> * * <p>The parser must resolve the URI fully before creating the * exception.</p> * * @param message The error or warning message, or null to use * the message from the embedded exception. * @param uri The URI of the document that generated * the error or warning. * @param lineNumber The line number of the end of the text that * caused the error or warning. * @param columnNumber The column number of the end of the text that * cause the error or warning. * @param e Another exception to embed in this one. * @see Parser#setLocale */
public CSSParseException(String message, String uri, int lineNumber, int columnNumber, Exception e) { super(SAC_SYNTAX_ERR, message, e); this.uri = uri; this.lineNumber = lineNumber; this.columnNumber = columnNumber; }
Get the URI of the document where the exception occurred.

The URI will be resolved fully.

See Also:
Returns:A string containing the URI, or null if none is available.
/** * Get the URI of the document where the exception occurred. * * <p>The URI will be resolved fully.</p> * * @return A string containing the URI, or null * if none is available. * @see Locator#getURI */
public String getURI() { return this.uri; }
The line number of the end of the text where the exception occurred.
See Also:
Returns:An integer representing the line number, or -1 if none is available.
/** * The line number of the end of the text where the exception occurred. * * @return An integer representing the line number, or -1 * if none is available. * @see Locator#getLineNumber */
public int getLineNumber() { return this.lineNumber; }
The column number of the end of the text where the exception occurred.

The first column in a line is position 1.

See Also:
Returns:An integer representing the column number, or -1 if none is available.
/** * The column number of the end of the text where the exception occurred. * * <p>The first column in a line is position 1.</p> * * @return An integer representing the column number, or -1 * if none is available. * @see Locator#getColumnNumber */
public int getColumnNumber() { return this.columnNumber; } }