|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.xml.sax.helpers.DefaultHandler
org.apache.xalan.processor.StylesheetHandler
public class StylesheetHandler
Initializes and processes a stylesheet via SAX events. This class acts as essentially a state machine, maintaining a ContentHandler stack, and pushing appropriate content handlers as parse events occur.
Field Summary | |
---|---|
static int |
STYPE_IMPORT
If getStylesheetType returns this value, the current stylesheet is an imported stylesheet. |
static int |
STYPE_INCLUDE
If getStylesheetType returns this value, the current stylesheet is an included stylesheet. |
static int |
STYPE_ROOT
If getStylesheetType returns this value, the current stylesheet is a root stylesheet. |
Constructor Summary | |
---|---|
StylesheetHandler(TransformerFactoryImpl processor)
Create a StylesheetHandler object, creating a root stylesheet as the target. |
Method Summary | |
---|---|
void |
characters(char[] ch,
int start,
int length)
Receive notification of character data inside an element. |
XPath |
createXPath(java.lang.String str,
ElemTemplateElement owningTemplate)
Process an expression string into an XPath. |
void |
endDocument()
Receive notification of the end of the document. |
void |
endElement(java.lang.String uri,
java.lang.String localName,
java.lang.String rawName)
Receive notification of the end of an element. |
void |
endPrefixMapping(java.lang.String prefix)
Receive notification of the end of a Namespace mapping. |
void |
error(org.xml.sax.SAXParseException e)
Receive notification of a recoverable XSLT processing error. |
void |
fatalError(org.xml.sax.SAXParseException e)
Report a fatal XSLT processing error. |
java.lang.String |
getBaseIdentifier()
Return the base identifier. |
boolean |
getIncremental()
|
SAXSourceLocator |
getLocator()
Get the current stylesheet Locator object. |
java.lang.String |
getNamespaceForPrefix(java.lang.String prefix)
Given a namespace, get the corrisponding prefix from the current namespace support context. |
java.lang.String |
getNamespaceForPrefix(java.lang.String prefix,
org.w3c.dom.Node context)
Given a namespace, get the corrisponding prefix. |
boolean |
getOptimize()
|
org.w3c.dom.Node |
getOriginatingNode()
Set the node that is originating the SAX event. |
XSLTSchema |
getSchema()
Get the root of the XSLT Schema, which tells us how to transition content handlers, create elements, etc. |
boolean |
getSource_location()
|
TransformerFactoryImpl |
getStylesheetProcessor()
Get the XSLT TransformerFactoryImpl for needed services. |
StylesheetRoot |
getStylesheetRoot()
Return the stylesheet root that this handler is constructing. |
java.lang.String |
getSystemId()
Get the base ID (URI or system ID) from where relative URLs will be resolved. |
javax.xml.transform.Templates |
getTemplates()
When this object is used as a ContentHandler or ContentHandler, it will create a Templates object, which the caller can get once the SAX events have been completed. |
boolean |
handlesNullPrefixes()
|
void |
ignorableWhitespace(char[] ch,
int start,
int length)
Receive notification of ignorable whitespace in element content. |
boolean |
isStylesheetParsingComplete()
Test whether the _last_ endDocument() has been processed. |
void |
notationDecl(java.lang.String name,
java.lang.String publicId,
java.lang.String systemId)
Receive notification of a notation declaration. |
void |
processingInstruction(java.lang.String target,
java.lang.String data)
Receive notification of a processing instruction. |
void |
pushStylesheet(Stylesheet s)
Push the current stylesheet being constructed. |
org.xml.sax.InputSource |
resolveEntity(java.lang.String publicId,
java.lang.String systemId)
Resolve an external entity. |
void |
setDocumentLocator(org.xml.sax.Locator locator)
Receive a Locator object for document events. |
void |
setOriginatingNode(org.w3c.dom.Node n)
Set the node that is originating the SAX event. |
void |
setSystemId(java.lang.String baseID)
Set the base ID (URL or system ID) for the stylesheet created by this builder. |
void |
skippedEntity(java.lang.String name)
Receive notification of a skipped entity. |
void |
startDocument()
Receive notification of the beginning of the document. |
void |
startElement(java.lang.String uri,
java.lang.String localName,
java.lang.String rawName,
org.xml.sax.Attributes attributes)
Receive notification of the start of an element. |
void |
startPrefixMapping(java.lang.String prefix,
java.lang.String uri)
Receive notification of the start of a Namespace mapping. |
void |
unparsedEntityDecl(java.lang.String name,
java.lang.String publicId,
java.lang.String systemId,
java.lang.String notationName)
Receive notification of an unparsed entity declaration. |
void |
warn(java.lang.String msg,
java.lang.Object[] args)
Warn the user of an problem. |
void |
warning(org.xml.sax.SAXParseException e)
Receive notification of a XSLT processing warning. |
Methods inherited from class java.lang.Object |
---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int STYPE_ROOT
public static final int STYPE_INCLUDE
public static final int STYPE_IMPORT
Constructor Detail |
---|
public StylesheetHandler(TransformerFactoryImpl processor) throws javax.xml.transform.TransformerConfigurationException
processor
- non-null reference to the transformer factory that owns this handler.
javax.xml.transform.TransformerConfigurationException
- if a StylesheetRoot
can not be constructed for some reason.Method Detail |
---|
public XPath createXPath(java.lang.String str, ElemTemplateElement owningTemplate) throws javax.xml.transform.TransformerException
str
- A non-null reference to a valid or invalid XPath expression string.
javax.xml.transform.TransformerException
- if the expression can not be processed.public java.lang.String getNamespaceForPrefix(java.lang.String prefix)
getNamespaceForPrefix
in interface PrefixResolver
prefix
- The prefix to look up, which may be an empty string ("") for the default Namespace.
public java.lang.String getNamespaceForPrefix(java.lang.String prefix, org.w3c.dom.Node context)
PrefixResolver
interface,
and will throw an error if invoked on this object.
getNamespaceForPrefix
in interface PrefixResolver
prefix
- The prefix to look up, which may be an empty string ("") for the default Namespace.context
- The node context from which to look up the URI.
public javax.xml.transform.Templates getTemplates()
getTemplates
in interface javax.xml.transform.sax.TemplatesHandler
public void setSystemId(java.lang.String baseID)
setSystemId
in interface javax.xml.transform.sax.TemplatesHandler
baseID
- Base URL for this stylesheet.public java.lang.String getSystemId()
getSystemId
in interface javax.xml.transform.sax.TemplatesHandler
setSystemId(java.lang.String)
.public org.xml.sax.InputSource resolveEntity(java.lang.String publicId, java.lang.String systemId) throws org.xml.sax.SAXException
resolveEntity
in interface org.xml.sax.EntityResolver
resolveEntity
in class org.xml.sax.helpers.DefaultHandler
publicId
- The public identifer, or null if none is
available.systemId
- The system identifier provided in the XML
document.
org.xml.sax.SAXException
- if the entity can not be resolved.public void notationDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId)
By default, do nothing. Application writers may override this method in a subclass if they wish to keep track of the notations declared in a document.
notationDecl
in interface org.xml.sax.DTDHandler
notationDecl
in class org.xml.sax.helpers.DefaultHandler
name
- The notation name.publicId
- The notation public identifier, or null if not
available.systemId
- The notation system identifier.DTDHandler.notationDecl(java.lang.String, java.lang.String, java.lang.String)
public void unparsedEntityDecl(java.lang.String name, java.lang.String publicId, java.lang.String systemId, java.lang.String notationName)
unparsedEntityDecl
in interface org.xml.sax.DTDHandler
unparsedEntityDecl
in class org.xml.sax.helpers.DefaultHandler
name
- The entity name.publicId
- The entity public identifier, or null if not
available.systemId
- The entity system identifier.notationName
- The name of the associated notation.DTDHandler.unparsedEntityDecl(java.lang.String, java.lang.String, java.lang.String, java.lang.String)
public void setDocumentLocator(org.xml.sax.Locator locator)
setDocumentLocator
in interface org.xml.sax.ContentHandler
setDocumentLocator
in class org.xml.sax.helpers.DefaultHandler
locator
- A locator for all SAX document events.ContentHandler.setDocumentLocator(org.xml.sax.Locator)
,
Locator
public void startDocument() throws org.xml.sax.SAXException
startDocument
in interface org.xml.sax.ContentHandler
startDocument
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.startDocument()
public boolean isStylesheetParsingComplete()
public void endDocument() throws org.xml.sax.SAXException
endDocument
in interface org.xml.sax.ContentHandler
endDocument
in class org.xml.sax.helpers.DefaultHandler
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.endDocument()
public void startPrefixMapping(java.lang.String prefix, java.lang.String uri) throws org.xml.sax.SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions at the start of each element (such as allocating a new tree node or writing output to a file).
startPrefixMapping
in interface org.xml.sax.ContentHandler
startPrefixMapping
in class org.xml.sax.helpers.DefaultHandler
prefix
- The Namespace prefix being declared.uri
- The Namespace URI mapped to the prefix.
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.startPrefixMapping(java.lang.String, java.lang.String)
public void endPrefixMapping(java.lang.String prefix) throws org.xml.sax.SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions at the start of each element (such as allocating a new tree node or writing output to a file).
endPrefixMapping
in interface org.xml.sax.ContentHandler
endPrefixMapping
in class org.xml.sax.helpers.DefaultHandler
prefix
- The Namespace prefix being declared.
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.endPrefixMapping(java.lang.String)
public void startElement(java.lang.String uri, java.lang.String localName, java.lang.String rawName, org.xml.sax.Attributes attributes) throws org.xml.sax.SAXException
startElement
in interface org.xml.sax.ContentHandler
startElement
in class org.xml.sax.helpers.DefaultHandler
uri
- The Namespace URI, or an empty string.localName
- The local name (without prefix), or empty string if not namespace processing.rawName
- The qualified name (with prefix).attributes
- The specified or defaulted attributes.
org.xml.sax.SAXException
public void endElement(java.lang.String uri, java.lang.String localName, java.lang.String rawName) throws org.xml.sax.SAXException
endElement
in interface org.xml.sax.ContentHandler
endElement
in class org.xml.sax.helpers.DefaultHandler
uri
- The Namespace URI, or an empty string.localName
- The local name (without prefix), or empty string if not namespace processing.rawName
- The qualified name (with prefix).
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.endElement(java.lang.String, java.lang.String, java.lang.String)
public void characters(char[] ch, int start, int length) throws org.xml.sax.SAXException
characters
in interface org.xml.sax.ContentHandler
characters
in class org.xml.sax.helpers.DefaultHandler
ch
- The characters.start
- The start position in the character array.length
- The number of characters to use from the
character array.
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.characters(char[], int, int)
public void ignorableWhitespace(char[] ch, int start, int length) throws org.xml.sax.SAXException
ignorableWhitespace
in interface org.xml.sax.ContentHandler
ignorableWhitespace
in class org.xml.sax.helpers.DefaultHandler
ch
- The whitespace characters.start
- The start position in the character array.length
- The number of characters to use from the
character array.
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.ignorableWhitespace(char[], int, int)
public void processingInstruction(java.lang.String target, java.lang.String data) throws org.xml.sax.SAXException
The Parser will invoke this method once for each processing instruction found: note that processing instructions may occur before or after the main document element.
A SAX parser should never report an XML declaration (XML 1.0, section 2.8) or a text declaration (XML 1.0, section 4.3.1) using this method.
By default, do nothing. Application writers may override this method in a subclass to take specific actions for each processing instruction, such as setting status variables or invoking other methods.
processingInstruction
in interface org.xml.sax.ContentHandler
processingInstruction
in class org.xml.sax.helpers.DefaultHandler
target
- The processing instruction target.data
- The processing instruction data, or null if
none is supplied.
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.processingInstruction(java.lang.String, java.lang.String)
public void skippedEntity(java.lang.String name) throws org.xml.sax.SAXException
By default, do nothing. Application writers may override this method in a subclass to take specific actions for each processing instruction, such as setting status variables or invoking other methods.
skippedEntity
in interface org.xml.sax.ContentHandler
skippedEntity
in class org.xml.sax.helpers.DefaultHandler
name
- The name of the skipped entity.
org.xml.sax.SAXException
- Any SAX exception, possibly
wrapping another exception.ContentHandler.processingInstruction(java.lang.String, java.lang.String)
public void warn(java.lang.String msg, java.lang.Object[] args) throws org.xml.sax.SAXException
msg
- An key into the XSLTErrorResources
table, that is one of the WG_ prefixed definitions.args
- An array of arguments for the given warning.
org.xml.sax.SAXException
- that wraps a
TransformerException
if the current
ErrorListener.warning(javax.xml.transform.TransformerException)
method chooses to flag this condition as an error.
public void warning(org.xml.sax.SAXParseException e) throws org.xml.sax.SAXException
warning
in interface org.xml.sax.ErrorHandler
warning
in class org.xml.sax.helpers.DefaultHandler
e
- The warning information encoded as an exception.
org.xml.sax.SAXException
- that wraps a
TransformerException
if the current
ErrorListener.warning(javax.xml.transform.TransformerException)
method chooses to flag this condition as an error.public void error(org.xml.sax.SAXParseException e) throws org.xml.sax.SAXException
error
in interface org.xml.sax.ErrorHandler
error
in class org.xml.sax.helpers.DefaultHandler
e
- The error information encoded as an exception.
org.xml.sax.SAXException
- that wraps a
TransformerException
if the current
ErrorListener.error(javax.xml.transform.TransformerException)
method chooses to flag this condition as an error.public void fatalError(org.xml.sax.SAXParseException e) throws org.xml.sax.SAXException
fatalError
in interface org.xml.sax.ErrorHandler
fatalError
in class org.xml.sax.helpers.DefaultHandler
e
- The error information encoded as an exception.
org.xml.sax.SAXException
- that wraps a
TransformerException
if the current
ErrorListener.fatalError(javax.xml.transform.TransformerException)
method chooses to flag this condition as an error.public TransformerFactoryImpl getStylesheetProcessor()
public StylesheetRoot getStylesheetRoot()
public void pushStylesheet(Stylesheet s)
s
- non-null reference to a stylesheet.public XSLTSchema getSchema()
public java.lang.String getBaseIdentifier()
getBaseIdentifier
in interface PrefixResolver
public SAXSourceLocator getLocator()
public void setOriginatingNode(org.w3c.dom.Node n)
setOriginatingNode
in interface NodeConsumer
n
- Reference to node that originated the current event.NodeConsumer
public org.w3c.dom.Node getOriginatingNode()
NodeConsumer
public boolean handlesNullPrefixes()
handlesNullPrefixes
in interface PrefixResolver
PrefixResolver.handlesNullPrefixes()
public boolean getOptimize()
public boolean getIncremental()
public boolean getSource_location()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |