|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.xml.sax.helpers.DefaultHandler
org.objectweb.asm.xml.ASMContentHandler
public class ASMContentHandler
A ContentHandler
that transforms XML
document into Java class file. This class can be feeded by any kind of SAX
2.0 event producers, e.g. XML parser, XSLT or XPath engines, or custom code.
SAXClassAdapter
,
Processor
Nested Class Summary | |
---|---|
protected class |
ASMContentHandler.Rule
Rule |
Field Summary | |
---|---|
protected boolean |
computeMax
true if the maximum stack size and number of local variables must be automatically computed. |
protected ClassWriter |
cw
Current instance of the ClassWriter used to write
class bytecode. |
protected Map |
labels
Map of the active Label instances for current method. |
protected OutputStream |
os
Output stream to write result bytecode. |
Constructor Summary | |
---|---|
ASMContentHandler(OutputStream os,
boolean computeMax)
Constructs a new ASMContentHandler object. |
Method Summary | |
---|---|
void |
endDocument()
Process notification of the end of a document and write generated bytecode into output stream. |
void |
endElement(String ns,
String lName,
String qName)
Process notification of the end of an XML element being reached. |
void |
startElement(String ns,
String lName,
String qName,
Attributes list)
Process notification of the start of an XML element being reached. |
byte[] |
toByteArray()
Returns the bytecode of the class that was build with underneath class writer. |
Methods inherited from class org.xml.sax.helpers.DefaultHandler |
---|
characters, endPrefixMapping, error, fatalError, ignorableWhitespace, notationDecl, processingInstruction, resolveEntity, setDocumentLocator, skippedEntity, startDocument, startPrefixMapping, unparsedEntityDecl, warning |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected boolean computeMax
protected OutputStream os
protected ClassWriter cw
ClassWriter
used to write
class bytecode.
protected Map labels
Label
instances for current method.
Constructor Detail |
---|
public ASMContentHandler(OutputStream os, boolean computeMax)
ASMContentHandler
object.
os
- output stream to write generated class.computeMax
- true if the maximum stack size and the
maximum number of local variables must be automatically computed.
This value is passed to ClassWriter
instance.Method Detail |
---|
public byte[] toByteArray()
public final void startElement(String ns, String lName, String qName, Attributes list) throws SAXException
startElement
in interface ContentHandler
startElement
in class org.xml.sax.helpers.DefaultHandler
ns
- - The Namespace URI, or the empty string if the element has no
Namespace URI or if Namespace processing is not being performed.lName
- - The local name (without prefix), or the empty string if
Namespace processing is not being performed.qName
- - The qualified name (with prefix), or the empty string if
qualified names are not available.list
- - The attributes attached to the element. If there are no
attributes, it shall be an empty Attributes object.
SAXException
- if a parsing error is to be reportedpublic final void endElement(String ns, String lName, String qName) throws SAXException
endElement
in interface ContentHandler
endElement
in class org.xml.sax.helpers.DefaultHandler
ns
- - The Namespace URI, or the empty string if the element has no
Namespace URI or if Namespace processing is not being performed.lName
- - The local name (without prefix), or the empty string if
Namespace processing is not being performed.qName
- - The qualified XML 1.0 name (with prefix), or the empty
string if qualified names are not available.
SAXException
- if a parsing error is to be reportedpublic final void endDocument() throws SAXException
endDocument
in interface ContentHandler
endDocument
in class org.xml.sax.helpers.DefaultHandler
SAXException
- if parsing or writing error is to be reported.
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |