Class RootXmlReadHandler
java.lang.Object
org.xml.sax.helpers.DefaultHandler
org.pentaho.reporting.libraries.xmlns.parser.RootXmlReadHandler
- All Implemented Interfaces:
ContentHandler, DTDHandler, EntityResolver, ErrorHandler
- Direct Known Subclasses:
MultiplexRootElementHandler
A base root SAX handler.
- Author:
- Peter Becker, Thomas Morgner
-
Constructor Summary
ConstructorsConstructorDescriptionRootXmlReadHandler(org.pentaho.reporting.libraries.resourceloader.ResourceManager manager, org.pentaho.reporting.libraries.resourceloader.ResourceKey source, long version) Creates a new root-handler using the given versioning information and resource-manager.RootXmlReadHandler(org.pentaho.reporting.libraries.resourceloader.ResourceManager manager, org.pentaho.reporting.libraries.resourceloader.ResourceKey source, org.pentaho.reporting.libraries.resourceloader.ResourceKey context, long version) Creates a new root-handler using the given versioning information and resource-manager. -
Method Summary
Modifier and TypeMethodDescriptionvoidcharacters(char[] ch, int start, int length) Process character data.voiddelegate(XmlReadHandler handler, String uri, String tagName, Attributes attrs) Delegate to another handler.final voidendElement(String originalUri, String localName, String qName) Finish processing an element.Returns the comment handler that is used to collect comments.org.pentaho.reporting.libraries.resourceloader.ResourceKeyReturns the context key.org.pentaho.reporting.libraries.resourceloader.DependencyCollectorReturns the current dependency collector for this parse-operation.Returns the current documentLocator.getHelperObject(String key) Returns an object from the registry.String[]Returns the array of all currently registered helper-objects.org.pentaho.reporting.libraries.base.config.DefaultConfigurationReturns the parser-configuration.org.pentaho.reporting.libraries.resourceloader.ResourceManagerReturns the resource-manager that is used to load external resources.Tries to return the parse-result of the selected root-handler.org.pentaho.reporting.libraries.resourceloader.ResourceKeyReturns the source key.booleanChecks, whether this is the first call to the handler.voidrecurse(XmlReadHandler handler, String uri, String tagName, Attributes attrs) Start a new handler stack and delegate to another handler.voidsetDocumentLocator(Locator locator) Receive an object for locating the origin of SAX document events.voidsetHelperObject(String key, Object value) Adds an object to the registry.voidStarts processing a document.final voidstartElement(String originalUri, String localName, String qName, Attributes attributes) Starts processing an element.voidHand control back to the previous handler.Methods inherited from class DefaultHandler
endDocument, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, skippedEntity, startPrefixMapping, unparsedEntityDecl, warningMethods inherited from class Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface ContentHandler
declaration
-
Constructor Details
-
RootXmlReadHandler
public RootXmlReadHandler(org.pentaho.reporting.libraries.resourceloader.ResourceManager manager, org.pentaho.reporting.libraries.resourceloader.ResourceKey source, long version) Creates a new root-handler using the given versioning information and resource-manager.- Parameters:
manager- the resource manager that loaded this xml-file.source- the source-key that idenfies from where the file was loaded.version- the versioning information for the root-file.
-
RootXmlReadHandler
public RootXmlReadHandler(org.pentaho.reporting.libraries.resourceloader.ResourceManager manager, org.pentaho.reporting.libraries.resourceloader.ResourceKey source, org.pentaho.reporting.libraries.resourceloader.ResourceKey context, long version) Creates a new root-handler using the given versioning information and resource-manager.- Parameters:
manager- the resource manager that loaded this xml-file.source- the source-key that idenfies from where the file was loaded.context- the key that should be used to resolve relative paths.version- the versioning information for the root-file.
-
-
Method Details
-
getContext
public org.pentaho.reporting.libraries.resourceloader.ResourceKey getContext()Returns the context key. This key may specity a base context for loading resources. (It behaves like the 'base-url' setting of HTML and allows to reference external resources as relative paths without being bound to the original location of the xml file.)- Returns:
- the context.
-
getResourceManager
public org.pentaho.reporting.libraries.resourceloader.ResourceManager getResourceManager()Returns the resource-manager that is used to load external resources.- Returns:
- the resource-manager.
-
isFirstCall
public boolean isFirstCall()Checks, whether this is the first call to the handler.- Returns:
- true, if this is the first call, false otherwise.
-
getSource
public org.pentaho.reporting.libraries.resourceloader.ResourceKey getSource()Returns the source key. This key points to the file or stream that is currently parsed.- Returns:
- the source key.
-
getDependencyCollector
public org.pentaho.reporting.libraries.resourceloader.DependencyCollector getDependencyCollector()Returns the current dependency collector for this parse-operation. The Collector allows to check compound-keys for changes.- Returns:
- the dependency collector.
-
getCommentHandler
Returns the comment handler that is used to collect comments.- Returns:
- the comment handler.
-
getParserConfiguration
public org.pentaho.reporting.libraries.base.config.DefaultConfiguration getParserConfiguration()Returns the parser-configuration. This can be use to configure the parsing process.- Returns:
- the parser's configuration.
-
setDocumentLocator
Receive an object for locating the origin of SAX document events. The documentLocator allows the application to determine the end position of any document-related event, even if the parser is not reporting an error. Typically, the application will use this information for reporting its own errors (such as character content that does not match an application's business rules). The information returned by the documentLocator is probably not sufficient for use with a search engine.- Specified by:
setDocumentLocatorin interfaceContentHandler- Overrides:
setDocumentLocatorin classDefaultHandler- Parameters:
locator- the documentLocator.
-
getDocumentLocator
Returns the current documentLocator.- Returns:
- the documentLocator.
-
setHelperObject
-
getHelperObject
-
getHelperObjectNames
Returns the array of all currently registered helper-objects. Helper objects are used as simple communication process between the various handler implementations.- Returns:
- the helper object names.
-
recurse
public void recurse(XmlReadHandler handler, String uri, String tagName, Attributes attrs) throws SAXException Start a new handler stack and delegate to another handler.- Parameters:
handler- the handler.uri- the namespace uri of the current tag.tagName- the tag name.attrs- the attributes.- Throws:
SAXException- if there is a problem with the parser.
-
delegate
public void delegate(XmlReadHandler handler, String uri, String tagName, Attributes attrs) throws SAXException Delegate to another handler.- Parameters:
handler- the new handler.uri- the namespace uri of the current tag.tagName- the tag name.attrs- the attributes.- Throws:
SAXException- if there is a problem with the parser.
-
unwind
Hand control back to the previous handler.- Parameters:
uri- the namespace uri of the current tag.tagName- the tagname.- Throws:
SAXException- if there is a problem with the parser.
-
startDocument
Starts processing a document.- Specified by:
startDocumentin interfaceContentHandler- Overrides:
startDocumentin classDefaultHandler- Throws:
SAXException- not in this implementation.
-
startElement
public final void startElement(String originalUri, String localName, String qName, Attributes attributes) throws SAXException Starts processing an element.- Specified by:
startElementin interfaceContentHandler- Overrides:
startElementin classDefaultHandler- Parameters:
originalUri- the URI.localName- the local name.qName- the qName.attributes- the attributes.- Throws:
SAXException- if there is a parsing problem.
-
characters
Process character data.- Specified by:
charactersin interfaceContentHandler- Overrides:
charactersin classDefaultHandler- Parameters:
ch- the character buffer.start- the start index.length- the length of the character data.- Throws:
SAXException- if there is a parsing error.
-
endElement
public final void endElement(String originalUri, String localName, String qName) throws SAXException Finish processing an element.- Specified by:
endElementin interfaceContentHandler- Overrides:
endElementin classDefaultHandler- Parameters:
originalUri- the URI.localName- the local name.qName- the qName.- Throws:
SAXException- if there is a parsing error.
-
getResult
Tries to return the parse-result of the selected root-handler.- Returns:
- the parse-result.
- Throws:
SAXException- if an error occurs.
-