public class XMLPrinter extends gnu.kawa.io.OutPort implements PositionConsumer, XConsumer
Modifier and Type | Field and Description |
---|---|
boolean |
canonicalizeCDATA |
static ThreadLocation |
doctypePublic
The system identifier emitted in a DOCTYPE declaration.
|
static ThreadLocation |
doctypeSystem
Fluid parameter to control whether a DOCTYPE declaration is emitted.
|
boolean |
escapeNonAscii |
boolean |
escapeText |
boolean |
indentAttributes
When indenting, should attributes be lined up?
|
static ThreadLocation<java.lang.String> |
indentLoc |
int |
printIndent
Controls whether to add extra indentation.
|
boolean |
strict |
int |
useEmptyElementTag
Handling of empty elements.
|
Constructor and Description |
---|
XMLPrinter(gnu.kawa.io.OutPort out,
boolean autoFlush) |
XMLPrinter(java.io.OutputStream out) |
XMLPrinter(java.io.OutputStream out,
boolean autoFlush) |
XMLPrinter(java.io.OutputStream out,
gnu.kawa.io.Path path) |
XMLPrinter(java.io.Writer out) |
XMLPrinter(java.io.Writer out,
boolean autoFlush) |
Modifier and Type | Method and Description |
---|---|
void |
beginComment() |
void |
beginEntity(java.lang.Object base) |
void |
closeTag() |
void |
endAttribute()
No more attributes in this element.
|
void |
endComment() |
void |
endDocument() |
void |
endElement() |
void |
endEntity() |
protected void |
endNumber() |
void |
error(java.lang.String msg,
java.lang.String code) |
static java.lang.String |
formatDecimal(java.math.BigDecimal dec)
Format java.math.BigDecimal as needed for XPath/XQuery's xs:decimal.
|
static java.lang.String |
formatDouble(double d)
Helper to format xs:double according to XPath/XQuery specification.
|
static java.lang.String |
formatFloat(float f)
Helper to format xs:float according to XPath/XQuery specification.
|
protected java.lang.String |
getHtmlTag(java.lang.Object type) |
boolean |
ignoring()
True if consumer is ignoring rest of element.
|
static boolean |
isHtmlEmptyElementTag(java.lang.String name) |
static XMLPrinter |
make(gnu.kawa.io.OutPort out,
java.lang.Object style) |
void |
print(java.lang.Object v) |
void |
setPrintXMLdecl(boolean value) |
void |
setStyle(java.lang.Object style) |
void |
startAttribute(java.lang.Object attrType)
Write a attribute for the current element.
|
void |
startDocument() |
void |
startElement(java.lang.Object type) |
protected void |
startNumber() |
static java.lang.String |
toString(java.lang.Object value)
Convert argument to string in XML syntax.
|
void |
write(char[] buf,
int off,
int len) |
void |
write(int v) |
void |
write(java.lang.String str,
int start,
int length) |
void |
writeBaseUri(java.lang.Object uri) |
void |
writeBoolean(boolean v) |
void |
writeCDATA(char[] chars,
int offset,
int length) |
void |
writeComment(char[] chars,
int offset,
int length) |
void |
writeComment(java.lang.String chars) |
void |
writeDoctype(java.lang.String tagname,
java.lang.String systemId,
java.lang.String publicId) |
void |
writeDoctypeIfDefined(java.lang.String tagname)
Write DOCTYPE using ThreadLocations doctypeSystem and doctypePublic
|
void |
writeDouble(double d) |
void |
writeFloat(float f) |
void |
writeObject(java.lang.Object v) |
void |
writePosition(AbstractSequence seq,
int ipos)
Consume a single position pair.
|
void |
writePosition(SeqPosition position)
Consume node at current position.
|
void |
writeProcessingInstruction(java.lang.String target,
char[] content,
int offset,
int length) |
protected void |
writeQName(java.lang.Object name) |
clearBuffer, close, closeLogFile, closeOnExit, closeThis, echo, endLogicalBlock, errDefault, finalize, freshLine, getColumnNumber, getPrettyWriter, getSystemErr, getSystemOut, isOpen, isWordChar, openFile, openFile, outDefault, print, print, print, print, print, print, print, runCleanups, setColumnNumber, setErrDefault, setIndentation, setLogFile, setOutDefault, startLogicalBlock, startLogicalBlock, writeBreak, writeBreakFill, writeBreakLinear, writeSpaceFill, writeSpaceLinear, writeWordEnd, writeWordStart
append, append, append, write, writeInt, writeLong
checkError, clearError, flush, format, format, print, print, printf, printf, println, println, println, println, println, println, println, println, println, println, setError, write, write
public int printIndent
public boolean indentAttributes
public boolean canonicalizeCDATA
public int useEmptyElementTag
<br></br>
.
1: Use XML-style empty element tags: <br/>
2: Use HTML-compatible empty element tags: <br />
public boolean escapeText
public boolean escapeNonAscii
public static final ThreadLocation doctypeSystem
public static final ThreadLocation doctypePublic
public static final ThreadLocation<java.lang.String> indentLoc
public boolean strict
public XMLPrinter(gnu.kawa.io.OutPort out, boolean autoFlush)
public XMLPrinter(java.io.Writer out, boolean autoFlush)
public XMLPrinter(java.io.OutputStream out, boolean autoFlush)
public XMLPrinter(java.io.Writer out)
public XMLPrinter(java.io.OutputStream out)
public XMLPrinter(java.io.OutputStream out, gnu.kawa.io.Path path)
public void setPrintXMLdecl(boolean value)
public static XMLPrinter make(gnu.kawa.io.OutPort out, java.lang.Object style)
public static java.lang.String toString(java.lang.Object value)
public void setStyle(java.lang.Object style)
public void write(int v)
public void writeBoolean(boolean v)
writeBoolean
in interface Consumer
writeBoolean
in class PrintConsumer
protected void startNumber()
startNumber
in class PrintConsumer
protected void endNumber()
endNumber
in class PrintConsumer
public void closeTag()
public void startDocument()
startDocument
in interface Consumer
startDocument
in class PrintConsumer
public void endDocument()
endDocument
in interface Consumer
endDocument
in class PrintConsumer
public void beginEntity(java.lang.Object base)
beginEntity
in interface XConsumer
protected void writeQName(java.lang.Object name)
public void writeDoctypeIfDefined(java.lang.String tagname)
public void writeDoctype(java.lang.String tagname, java.lang.String systemId, java.lang.String publicId)
public void startElement(java.lang.Object type)
startElement
in interface Consumer
startElement
in class gnu.kawa.io.OutPort
public static boolean isHtmlEmptyElementTag(java.lang.String name)
protected java.lang.String getHtmlTag(java.lang.Object type)
public void endElement()
endElement
in interface Consumer
endElement
in class gnu.kawa.io.OutPort
public void startAttribute(java.lang.Object attrType)
startAttribute
in interface Consumer
startAttribute
in class gnu.kawa.io.OutPort
public void endAttribute()
gnu.kawa.io.OutPort
endAttribute
in interface Consumer
endAttribute
in class gnu.kawa.io.OutPort
public void writeDouble(double d)
writeDouble
in interface Consumer
writeDouble
in class PrintConsumer
public void writeFloat(float f)
writeFloat
in interface Consumer
writeFloat
in class PrintConsumer
public static java.lang.String formatDouble(double d)
public static java.lang.String formatFloat(float f)
public static java.lang.String formatDecimal(java.math.BigDecimal dec)
public void print(java.lang.Object v)
print
in class gnu.kawa.io.OutPort
public void writeObject(java.lang.Object v)
writeObject
in interface Consumer
writeObject
in class PrintConsumer
public boolean ignoring()
ignoring
in interface Consumer
ignoring
in class PrintConsumer
public void write(java.lang.String str, int start, int length)
write
in class java.io.PrintWriter
public void write(char[] buf, int off, int len)
public void writePosition(AbstractSequence seq, int ipos)
PositionConsumer
writePosition
in interface PositionConsumer
public void writeBaseUri(java.lang.Object uri)
public void beginComment()
public void endComment()
public void writeComment(java.lang.String chars)
public void writeComment(char[] chars, int offset, int length)
writeComment
in interface XConsumer
public void writeCDATA(char[] chars, int offset, int length)
writeCDATA
in interface XConsumer
public void writeProcessingInstruction(java.lang.String target, char[] content, int offset, int length)
writeProcessingInstruction
in interface XConsumer
public void writePosition(SeqPosition position)
PositionConsumer
writePosition
in interface PositionConsumer
public void error(java.lang.String msg, java.lang.String code)