org.w3c.css.sac
Interface Parser
- SACParser
Basic interface for CSS (Simple API for CSS) parsers.
All CSS parsers must implement this basic interface: it allows
applications to register handlers for different types of events
and to initiate a parse from a URI, or a character stream.
All CSS parsers must also implement a zero-argument constructor
(though other constructors are also allowed).
CSS parsers are reusable but not re-entrant: the application
may reuse a parser object (possibly with a different input source)
once the first parse has completed successfully, but it may not
invoke the parse() methods recursively within a parse.
getParserVersion
public String getParserVersion()
Returns a string about which CSS language is supported by this
parser. For CSS Level 1, it returns "http://www.w3.org/TR/REC-CSS1", for
CSS Level 2, it returns "http://www.w3.org/TR/REC-CSS2". Note that a
"CSSx" parser can return lexical unit other than those allowed by CSS
Level x but this usage is not recommended.
parsePriority
public boolean parsePriority(InputSource source)
throws CSSException,
IOException
Parse a CSS priority value (e.g. "!important").
CSSException
- Any CSS exception, possibly
wrapping another exception.
parseStyleDeclaration
public void parseStyleDeclaration(InputSource source)
throws CSSException,
IOException
Parse a CSS style declaration (without '{' and '}').
CSSException
- Any CSS exception, possibly
wrapping another exception.
parseStyleSheet
public void parseStyleSheet(String uri)
throws CSSException,
IOException
Parse a CSS document from a URI.
This method is a shortcut for the common case of reading a document
from a URI. It is the exact equivalent of the following:
parse(new InputSource(uri));
The URI must be fully resolved by the application before it is passed
to the parser.
CSSException
- Any CSS exception, possibly
wrapping another exception.
parseStyleSheet
public void parseStyleSheet(InputSource source)
throws CSSException,
IOException
Parse a CSS document.
The application can use this method to instruct the CSS parser
to begin parsing an CSS document from any valid input
source (a character stream, a byte stream, or a URI).
Applications may not invoke this method while a parse is in
progress (they should create a new Parser instead for each
additional CSS document). Once a parse is complete, an
application may reuse the same Parser object, possibly with a
different input source.
source
- The input source for the top-level of the
CSS document.
CSSException
- Any CSS exception, possibly
wrapping another exception.
setConditionFactory
public void setConditionFactory(ConditionFactory conditionFactory)
setDocumentHandler
public void setDocumentHandler(DocumentHandler handler)
Allow an application to register a document event handler.
If the application does not register a document handler, all
document events reported by the CSS parser will be silently
ignored (this is the default behaviour implemented by
HandlerBase).
Applications may register a new or different handler in the
middle of a parse, and the CSS parser must begin using the new
handler immediately.
handler
- The document handler.
setErrorHandler
public void setErrorHandler(ErrorHandler handler)
Allow an application to register an error event handler.
If the application does not register an error event handler,
all error events reported by the CSS parser will be silently
ignored, except for fatalError, which will throw a CSSException
(this is the default behaviour implemented by HandlerBase).
Applications may register a new or different handler in the
middle of a parse, and the CSS parser must begin using the new
handler immediately.
handler
- The error handler.
setLocale
public void setLocale(Locale locale)
throws CSSException
Allow an application to request a locale for errors and warnings.
CSS parsers are not required to provide localisation for errors
and warnings; if they cannot support the requested locale,
however, they must throw a CSS exception. Applications may
not request a locale change in the middle of a parse.
locale
- A Java Locale object.
CSSException
- Throws an exception
(using the previous or default locale) if the
requested locale is not supported.
setSelectorFactory
public void setSelectorFactory(SelectorFactory selectorFactory)