org.jfree.layouting.input.style.parser
Class StyleSheetHandler

java.lang.Object
  extended by org.jfree.layouting.input.style.parser.StyleSheetHandler
All Implemented Interfaces:
org.w3c.css.sac.DocumentHandler, org.w3c.css.sac.ErrorHandler

public class StyleSheetHandler
extends java.lang.Object
implements org.w3c.css.sac.DocumentHandler, org.w3c.css.sac.ErrorHandler

Creation-Date: 23.11.2005, 13:06:06

Author:
Thomas Morgner

Constructor Summary
StyleSheetHandler()
           
 
Method Summary
 void comment(java.lang.String text)
          Receive notification of a comment.
 void endDocument(org.w3c.css.sac.InputSource source)
          Receive notification of the end of a document.
 void endFontFace()
          Receive notification of the end of a font face statement.
 void endMedia(org.w3c.css.sac.SACMediaList media)
          Receive notification of the end of a media statement.
 void endPage(java.lang.String name, java.lang.String pseudo_page)
          Receive notification of the end of a media statement.
 void endSelector(org.w3c.css.sac.SelectorList selectors)
          Receive notification of the end of a rule statement.
 void error(org.w3c.css.sac.CSSParseException exception)
          Receive notification of a recoverable error.
 void fatalError(org.w3c.css.sac.CSSParseException exception)
          Receive notification of a non-recoverable error.
 java.lang.String getDefaultNamespaceURI()
           
 org.pentaho.reporting.libraries.resourceloader.DependencyCollector getDependencies()
           
protected  StyleRule getParentRule()
           
 org.pentaho.reporting.libraries.resourceloader.ResourceManager getResourceManager()
           
 org.pentaho.reporting.libraries.resourceloader.ResourceKey getSource()
           
 CSSDeclarationRule getStyleRule()
           
 StyleSheet getStyleSheet()
           
 void ignorableAtRule(java.lang.String atRule)
          Receive notification of an unknown rule t-rule not supported by this parser.
 void importStyle(java.lang.String uri, org.w3c.css.sac.SACMediaList media, java.lang.String defaultNamespaceURI)
          Receive notification of a import statement in the style sheet.
 void init(org.pentaho.reporting.libraries.resourceloader.ResourceManager manager, org.pentaho.reporting.libraries.resourceloader.ResourceKey source, long version, StyleKeyRegistry registry, StyleRule parentRule)
           
 void initParseContext(org.w3c.css.sac.InputSource source)
           
 void namespaceDeclaration(java.lang.String prefix, java.lang.String uri)
          Receive notification of an unknown rule t-rule not supported by this parser.
 void property(java.lang.String name, org.w3c.css.sac.LexicalUnit value, boolean important)
          Receive notification of a declaration.
 void registerNamespace(java.lang.String prefix, java.lang.String uri)
           
 void setDefaultNamespaceURI(java.lang.String defaultNamespace)
           
 void setStyleRule(CSSDeclarationRule styleRule)
           
 void setStyleSheet(StyleSheet styleSheet)
           
 void startDocument(org.w3c.css.sac.InputSource source)
          Receive notification of the beginning of a style sheet.
 void startFontFace()
          Receive notification of the beginning of a font face statement.
 void startMedia(org.w3c.css.sac.SACMediaList media)
          Receive notification of the beginning of a media statement.
 void startPage(java.lang.String name, java.lang.String pseudo_page)
          Receive notification of the beginning of a page statement.
 void startSelector(org.w3c.css.sac.SelectorList selectors)
          Receive notification of the beginning of a rule statement.
 void warning(org.w3c.css.sac.CSSParseException exception)
          Receive notification of a warning.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

StyleSheetHandler

public StyleSheetHandler()
Method Detail

init

public void init(org.pentaho.reporting.libraries.resourceloader.ResourceManager manager,
                 org.pentaho.reporting.libraries.resourceloader.ResourceKey source,
                 long version,
                 StyleKeyRegistry registry,
                 StyleRule parentRule)

registerNamespace

public void registerNamespace(java.lang.String prefix,
                              java.lang.String uri)

getDefaultNamespaceURI

public java.lang.String getDefaultNamespaceURI()

setDefaultNamespaceURI

public void setDefaultNamespaceURI(java.lang.String defaultNamespace)

getSource

public org.pentaho.reporting.libraries.resourceloader.ResourceKey getSource()

getDependencies

public org.pentaho.reporting.libraries.resourceloader.DependencyCollector getDependencies()

getStyleRule

public CSSDeclarationRule getStyleRule()

setStyleRule

public void setStyleRule(CSSDeclarationRule styleRule)

getStyleSheet

public StyleSheet getStyleSheet()

setStyleSheet

public void setStyleSheet(StyleSheet styleSheet)

getResourceManager

public org.pentaho.reporting.libraries.resourceloader.ResourceManager getResourceManager()

initParseContext

public void initParseContext(org.w3c.css.sac.InputSource source)

startDocument

public void startDocument(org.w3c.css.sac.InputSource source)
                   throws org.w3c.css.sac.CSSException
Receive notification of the beginning of a style sheet.

The CSS parser will invoke this method only once, before any other methods in this interface.

Specified by:
startDocument in interface org.w3c.css.sac.DocumentHandler
Parameters:
source - the input source
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

endDocument

public void endDocument(org.w3c.css.sac.InputSource source)
                 throws org.w3c.css.sac.CSSException
Receive notification of the end of a document.

The CSS parser will invoke this method only once, and it will be the last method invoked during the parse. The parser shall not invoke this method until it has either abandoned parsing (because of an unrecoverable error) or reached the end of input.

Specified by:
endDocument in interface org.w3c.css.sac.DocumentHandler
Parameters:
source - the input source
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

comment

public void comment(java.lang.String text)
             throws org.w3c.css.sac.CSSException
Receive notification of a comment. If the comment appears in a declaration (e.g. color: /* comment * / blue;), the parser notifies the comment before the declaration.

Specified by:
comment in interface org.w3c.css.sac.DocumentHandler
Parameters:
text - The comment.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

ignorableAtRule

public void ignorableAtRule(java.lang.String atRule)
                     throws org.w3c.css.sac.CSSException
Receive notification of an unknown rule t-rule not supported by this parser.

Specified by:
ignorableAtRule in interface org.w3c.css.sac.DocumentHandler
Parameters:
atRule - The complete ignored at-rule.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

namespaceDeclaration

public void namespaceDeclaration(java.lang.String prefix,
                                 java.lang.String uri)
                          throws org.w3c.css.sac.CSSException
Receive notification of an unknown rule t-rule not supported by this parser.

Specified by:
namespaceDeclaration in interface org.w3c.css.sac.DocumentHandler
Parameters:
prefix - null if this is the default namespace
uri - The URI for this namespace.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

importStyle

public void importStyle(java.lang.String uri,
                        org.w3c.css.sac.SACMediaList media,
                        java.lang.String defaultNamespaceURI)
                 throws org.w3c.css.sac.CSSException
Receive notification of a import statement in the style sheet.

Specified by:
importStyle in interface org.w3c.css.sac.DocumentHandler
Parameters:
uri - The URI of the imported style sheet.
media - The intended destination media for style information.
defaultNamespaceURI - The default namespace URI for the imported style sheet.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

startMedia

public void startMedia(org.w3c.css.sac.SACMediaList media)
                throws org.w3c.css.sac.CSSException
Receive notification of the beginning of a media statement.

The Parser will invoke this method at the beginning of every media statement in the style sheet. there will be a corresponding endMedia() event for every startElement() event.

Specified by:
startMedia in interface org.w3c.css.sac.DocumentHandler
Parameters:
media - The intended destination media for style information.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

endMedia

public void endMedia(org.w3c.css.sac.SACMediaList media)
              throws org.w3c.css.sac.CSSException
Receive notification of the end of a media statement.

Specified by:
endMedia in interface org.w3c.css.sac.DocumentHandler
Parameters:
media - The intended destination media for style information.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

startPage

public void startPage(java.lang.String name,
                      java.lang.String pseudo_page)
               throws org.w3c.css.sac.CSSException
Receive notification of the beginning of a page statement.

The Parser will invoke this method at the beginning of every page statement in the style sheet. there will be a corresponding endPage() event for every startPage() event.

Specified by:
startPage in interface org.w3c.css.sac.DocumentHandler
Parameters:
name - the name of the page (if any, null otherwise)
pseudo_page - the pseudo page (if any, null otherwise)
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

endPage

public void endPage(java.lang.String name,
                    java.lang.String pseudo_page)
             throws org.w3c.css.sac.CSSException
Receive notification of the end of a media statement.

Specified by:
endPage in interface org.w3c.css.sac.DocumentHandler
Parameters:
name - The intended destination medium for style information.
pseudo_page - the pseudo page (if any, null otherwise)
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

startFontFace

public void startFontFace()
                   throws org.w3c.css.sac.CSSException
Receive notification of the beginning of a font face statement.

The Parser will invoke this method at the beginning of every font face statement in the style sheet. there will be a corresponding endFontFace() event for every startFontFace() event.

Specified by:
startFontFace in interface org.w3c.css.sac.DocumentHandler
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

getParentRule

protected StyleRule getParentRule()

endFontFace

public void endFontFace()
                 throws org.w3c.css.sac.CSSException
Receive notification of the end of a font face statement.

Specified by:
endFontFace in interface org.w3c.css.sac.DocumentHandler
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

startSelector

public void startSelector(org.w3c.css.sac.SelectorList selectors)
                   throws org.w3c.css.sac.CSSException
Receive notification of the beginning of a rule statement.

Specified by:
startSelector in interface org.w3c.css.sac.DocumentHandler
Parameters:
selectors - All intended selectors for all declarations.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

endSelector

public void endSelector(org.w3c.css.sac.SelectorList selectors)
                 throws org.w3c.css.sac.CSSException
Receive notification of the end of a rule statement.

Specified by:
endSelector in interface org.w3c.css.sac.DocumentHandler
Parameters:
selectors - All intended selectors for all declarations.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

property

public void property(java.lang.String name,
                     org.w3c.css.sac.LexicalUnit value,
                     boolean important)
              throws org.w3c.css.sac.CSSException
Receive notification of a declaration.

Specified by:
property in interface org.w3c.css.sac.DocumentHandler
Parameters:
name - the name of the property.
value - the value of the property. All whitespace are stripped.
important - is this property important ?
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.

warning

public void warning(org.w3c.css.sac.CSSParseException exception)
             throws org.w3c.css.sac.CSSException
Receive notification of a warning.

CSS parsers will use this method to report conditions that are not errors or fatal errors as defined by the XML 1.0 recommendation. The default behaviour is to take no action.

The CSS parser must continue to provide normal parsing events after invoking this method: it should still be possible for the application to process the document through to the end.

Specified by:
warning in interface org.w3c.css.sac.ErrorHandler
Parameters:
exception - The warning information encapsulated in a CSS parse exception.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.
See Also:
CSSParseException

error

public void error(org.w3c.css.sac.CSSParseException exception)
           throws org.w3c.css.sac.CSSException
Receive notification of a recoverable error.

This corresponds to the definition of "error" in section 1.2 of the W3C XML 1.0 Recommendation. For example, a validating parser would use this callback to report the violation of a validity constraint. The default behaviour is to take no action.

The CSS parser must continue to provide normal parsing events after invoking this method: it should still be possible for the application to process the document through to the end. If the application cannot do so, then the parser should report a fatal error even if the XML 1.0 recommendation does not require it to do so.

Specified by:
error in interface org.w3c.css.sac.ErrorHandler
Parameters:
exception - The error information encapsulated in a CSS parse exception.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.
See Also:
CSSParseException

fatalError

public void fatalError(org.w3c.css.sac.CSSParseException exception)
                throws org.w3c.css.sac.CSSException
Receive notification of a non-recoverable error.

This corresponds to the definition of "fatal error" in section 1.2 of the W3C XML 1.0 Recommendation. For example, a parser would use this callback to report the violation of a well-formedness constraint.

The application must assume that the document is unusable after the parser has invoked this method, and should continue (if at all) only for the sake of collecting addition error messages: in fact, CSS parsers are free to stop reporting any other events once this method has been invoked.

Specified by:
fatalError in interface org.w3c.css.sac.ErrorHandler
Parameters:
exception - The error information encapsulated in a CSS parse exception.
Throws:
org.w3c.css.sac.CSSException - Any CSS exception, possibly wrapping another exception.
See Also:
CSSParseException