gnu.xml

Class XMLPrinter

public class XMLPrinter extends OutPort implements PositionConsumer, XConsumer

Print an event stream in XML format on a PrintWriter.
Field Summary
booleancanonicalizeCDATA
static ThreadLocationdoctypePublic
The system identifier emitted in a DOCTYPE declaration.
static ThreadLocationdoctypeSystem
Fluid parameter to control whether a DOCTYPE declaration is emitted.
booleanescapeNonAscii
booleanescapeText
booleanindentAttributes
When indentating, should attributes be lined up?
static ThreadLocationindentLoc
intprintIndent
Controls whether to add extra indentation.
booleanstrict
intuseEmptyElementTag
Handling of empty elements.
Constructor Summary
XMLPrinter(OutPort out, boolean autoFlush)
XMLPrinter(Writer out, boolean autoFlush)
XMLPrinter(OutputStream out, boolean autoFlush)
XMLPrinter(Writer out)
XMLPrinter(OutputStream out)
XMLPrinter(OutputStream out, Path path)
Method Summary
voidbeginComment()
voidbeginEntity(Object base)
voidcloseTag()
voidconsume(SeqPosition position)
voidendAttribute()
voidendComment()
voidendDocument()
voidendElement()
voidendEntity()
protected voidendNumber()
voiderror(String msg, String code)
static StringformatDecimal(BigDecimal dec)
Format java.math.BigDecimal as needed for XPath/XQuery's xs:decimal.
static StringformatDouble(double d)
Helper to format xs:double according to XPath/XQuery specification.
static StringformatFloat(float f)
Helper to format xs:float according to XPath/XQuery specification.
booleanignoring()
True if consumer is ignoring rest of element.
static booleanisHtmlEmptyElementTag(String name)
static XMLPrintermake(OutPort out, Object style)
voidprint(Object v)
voidsetPrintXMLdecl(boolean value)
voidsetStyle(Object style)
voidstartAttribute(Object attrType)
Write a attribute for the current element.
voidstartDocument()
voidstartElement(Object type)
protected voidstartNumber()
static StringtoString(Object value)
Convert argument to string in XML syntax.
voidwrite(int v)
voidwrite(String str, int start, int length)
voidwrite(char[] buf, int off, int len)
voidwriteBaseUri(Object uri)
voidwriteBoolean(boolean v)
voidwriteCDATA(char[] chars, int offset, int length)
voidwriteComment(String chars)
voidwriteComment(char[] chars, int offset, int length)
voidwriteDouble(double d)
voidwriteFloat(float f)
voidwriteObject(Object v)
voidwritePosition(AbstractSequence seq, int ipos)
voidwriteProcessingInstruction(String target, char[] content, int offset, int length)
protected voidwriteQName(Object name)

Field Detail

canonicalizeCDATA

public boolean canonicalizeCDATA

doctypePublic

public static final ThreadLocation doctypePublic
The system identifier emitted in a DOCTYPE declaration. Has no effect if doctypeSystem returns null. If non-null, this is the the system identifier.

doctypeSystem

public static final ThreadLocation doctypeSystem
Fluid parameter to control whether a DOCTYPE declaration is emitted. If non-null, this is the the public identifier.

escapeNonAscii

public boolean escapeNonAscii

escapeText

public boolean escapeText

indentAttributes

public boolean indentAttributes
When indentating, should attributes be lined up?

indentLoc

public static final ThreadLocation indentLoc

printIndent

public int printIndent
Controls whether to add extra indentation. -1: don't add indentation; 0: pretty-print (avoid needless newlines); 1: indent (force).

strict

public boolean strict

useEmptyElementTag

public int useEmptyElementTag
Handling of empty elements. 0: No element element tags, as required for canonical XML: {@code

}. 1: Use XML-style empty element tags: {@code
} 2: Use HTML-compatible empty element tags: {@code
}

Constructor Detail

XMLPrinter

public XMLPrinter(OutPort out, boolean autoFlush)

XMLPrinter

public XMLPrinter(Writer out, boolean autoFlush)

XMLPrinter

public XMLPrinter(OutputStream out, boolean autoFlush)

XMLPrinter

public XMLPrinter(Writer out)

XMLPrinter

public XMLPrinter(OutputStream out)

XMLPrinter

public XMLPrinter(OutputStream out, Path path)

Method Detail

beginComment

public void beginComment()

beginEntity

public void beginEntity(Object base)

closeTag

public void closeTag()

consume

public void consume(SeqPosition position)

endAttribute

public void endAttribute()

endComment

public void endComment()

endDocument

public void endDocument()

endElement

public void endElement()

endEntity

public void endEntity()

endNumber

protected void endNumber()

error

public void error(String msg, String code)

formatDecimal

public static String formatDecimal(BigDecimal dec)
Format java.math.BigDecimal as needed for XPath/XQuery's xs:decimal. Specifically this means removing trailing fractional zeros, and a trailing decimal point. However, note that the XML Schema canonical representation does require a decimal point and at least one fractional digit.

formatDouble

public static String formatDouble(double d)
Helper to format xs:double according to XPath/XQuery specification.

formatFloat

public static String formatFloat(float f)
Helper to format xs:float according to XPath/XQuery specification.

ignoring

public boolean ignoring()
True if consumer is ignoring rest of element. The producer can use this information to skip ahead.

isHtmlEmptyElementTag

public static boolean isHtmlEmptyElementTag(String name)

make

public static XMLPrinter make(OutPort out, Object style)

print

public void print(Object v)

setPrintXMLdecl

public void setPrintXMLdecl(boolean value)

setStyle

public void setStyle(Object style)

startAttribute

public void startAttribute(Object attrType)
Write a attribute for the current element. This is only allowed immediately after a startElement.

startDocument

public void startDocument()

startElement

public void startElement(Object type)

startNumber

protected void startNumber()

toString

public static String toString(Object value)
Convert argument to string in XML syntax.

write

public void write(int v)

write

public void write(String str, int start, int length)

write

public void write(char[] buf, int off, int len)

writeBaseUri

public void writeBaseUri(Object uri)

writeBoolean

public void writeBoolean(boolean v)

writeCDATA

public void writeCDATA(char[] chars, int offset, int length)

writeComment

public void writeComment(String chars)

writeComment

public void writeComment(char[] chars, int offset, int length)

writeDouble

public void writeDouble(double d)

writeFloat

public void writeFloat(float f)

writeObject

public void writeObject(Object v)

writePosition

public void writePosition(AbstractSequence seq, int ipos)

writeProcessingInstruction

public void writeProcessingInstruction(String target, char[] content, int offset, int length)

writeQName

protected void writeQName(Object name)