org.apache.xml.utils

Class StylesheetPIHandler

public class StylesheetPIHandler extends DefaultHandler

Search for the xml-stylesheet processing instructions in an XML document.

See Also: Associating Style Sheets with XML documents, Version 1.0

Constructor Summary
StylesheetPIHandler(String baseID, String media, String title, String charset)
Construct a StylesheetPIHandler instance that will search for xml-stylesheet PIs based on the given criteria.
Method Summary
SourcegetAssociatedStylesheet()
Return the last stylesheet found that match the constraints.
StringgetBaseId()
URIResolvergetURIResolver()
Get the object that will be used to resolve URIs in href in xml-stylesheet processing instruction.
voidprocessingInstruction(String target, String data)
Handle the xml-stylesheet processing instruction.
voidsetBaseId(String baseId)
Added additional getter and setter methods for the Base Id to fix bugzilla bug 24187
voidsetURIResolver(URIResolver resolver)
Get the object that will be used to resolve URIs in href in xml-stylesheet processing instruction.
voidstartElement(String namespaceURI, String localName, String qName, Attributes atts)
The spec notes that "The xml-stylesheet processing instruction is allowed only in the prolog of an XML document.", so, at least for right now, I'm going to go ahead an throw a TransformerException in order to stop the parse.

Constructor Detail

StylesheetPIHandler

public StylesheetPIHandler(String baseID, String media, String title, String charset)
Construct a StylesheetPIHandler instance that will search for xml-stylesheet PIs based on the given criteria.

Parameters: baseID The base ID of the XML document, needed to resolve relative IDs. media The desired media criteria. title The desired title criteria. charset The desired character set criteria.

Method Detail

getAssociatedStylesheet

public Source getAssociatedStylesheet()
Return the last stylesheet found that match the constraints.

Returns: Source object that references the last stylesheet reference that matches the constraints.

getBaseId

public String getBaseId()

getURIResolver

public URIResolver getURIResolver()
Get the object that will be used to resolve URIs in href in xml-stylesheet processing instruction.

Returns: The URIResolver that was set with setURIResolver.

processingInstruction

public void processingInstruction(String target, String data)
Handle the xml-stylesheet processing instruction.

Parameters: target The processing instruction target. data The processing instruction data, or null if none is supplied.

Throws: org.xml.sax.SAXException Any SAX exception, possibly wrapping another exception.

See Also: org.xml.sax.ContentHandler#processingInstruction Associating Style Sheets with XML documents, Version 1.0

setBaseId

public void setBaseId(String baseId)
Added additional getter and setter methods for the Base Id to fix bugzilla bug 24187

setURIResolver

public void setURIResolver(URIResolver resolver)
Get the object that will be used to resolve URIs in href in xml-stylesheet processing instruction.

Parameters: resolver An object that implements the URIResolver interface, or null.

startElement

public void startElement(String namespaceURI, String localName, String qName, Attributes atts)
The spec notes that "The xml-stylesheet processing instruction is allowed only in the prolog of an XML document.", so, at least for right now, I'm going to go ahead an throw a TransformerException in order to stop the parse.

Parameters: namespaceURI The Namespace URI, or an empty string. localName The local name (without prefix), or empty string if not namespace processing. qName The qualified name (with prefix). atts The specified or defaulted attributes.

Throws: StopParseException since there can be no valid xml-stylesheet processing instructions past the first element.

Copyright B) 2005 Apache XML Project. All Rights Reserved.