Top Description Methods
org.jdom2.output.support

public Interface XMLOutputProcessor

Known Direct Implementers
org.jdom2.output.support.AbstractXMLOutputProcessor
Imports
java.io.IOException, .Writer, java.util.List, org.jdom2.Attribute, .CDATA, .Comment, .Content, .DocType, .Document, .Element, .EntityRef, .ProcessingInstruction, .Text, org.jdom2.output.Format, .XMLOutputter

This interface provides a base support for the XMLOutputter.

People who want to create a custom XMLOutputProcessor for XMLOutputter are able to implement this interface with the following notes and restrictions:

  1. The XMLOutputter will call one, and only one of the process(Writer,Format,*) methods each time the XMLOutputter is requested to output some JDOM content. It is thus safe to assume that a process(Writer,Format,*) method can set up any infrastructure needed to process the content, and that the XMLOutputter will not re-call that method, or some other process(Writer,Format,*) method for the same output sequence.
  2. The process methods should be thread-safe and reentrant: The same process(Writer,Format,*) method may (will) be called concurrently from different threads.

The AbstractXMLOutputProcessor class is a full implementation of this interface and is fully customisable. People who want a custom XMLOutputter are encouraged to extend the AbstractXMLOutputProcessor rather than do a full re-implementation of this interface.

Author
Rolf Lear
Since
JDOM2
See Also
XMLOutputter, AbstractXMLOutputProcessor

Method Summary

Modifier and TypeMethod and Description
public void
process(Writer
Writer to use.
out
,
Format
Format instance specifying output style
format
,
Document
Document to format.
doc
)

This will print the Document to the given Writer.

public void
process(Writer
Writer to use.
out
,
Format
Format instance specifying output style
format
,
DocType
DocType to output.
doctype
)

Print out the DocType.

public void
process(Writer
Writer to use.
out
,
Format
Format instance specifying output style
format
,
Element
Element to output.
element
)

Print out an Element, including its Attributes, and all contained (child) elements, etc.

public void
process(Writer
Writer to use.
out
,
Format
Format instance specifying output style
format
,
List<? extends Content>
List of nodes.
list
)

This will handle printing out a list of nodes.

public void
process(Writer
Writer to use.
out
,
Format
Format instance specifying output style
format
,
CDATA
CDATA to output.
cdata
)

Print out a CDATA node.

public void
process(Writer
Writer to use.
out
,
Format
Format instance specifying output style
format
,
Text
Text to output.
text
)

Print out a Text node.

public void
process(Writer
Writer to use.
out
,
Format
Format instance specifying output style
format
,
Comment
Comment to output.
comment
)

Print out a Comment.

public void
process(Writer
Writer to use.
out
,
Format
Format instance specifying output style
format
,
ProcessingInstruction
ProcessingInstruction to output.
pi
)

Print out a ProcessingInstruction.

public void
process(Writer
Writer to use.
out
,
Format
Format instance specifying output style
format
,
EntityRef
EntityRef to output.
entity
)

Print out a EntityRef.

Method Detail

processback to summary
public void process(Writer out, Format format, Document doc) throws IOException

This will print the Document to the given Writer.

Warning

using your own Writer may cause the outputter's preferred character encoding to be ignored. If you use encodings other than UTF-8, we recommend using the method that takes an OutputStream instead.

Parameters
out:Writer

Writer to use.

format:Format

Format instance specifying output style

doc:Document

Document to format.

Exceptions
IOException:
if there's any problem writing.
NullPointerException:
if the input content is null
processback to summary
public void process(Writer out, Format format, DocType doctype) throws IOException

Print out the DocType.

Parameters
out:Writer

Writer to use.

format:Format

Format instance specifying output style

doctype:DocType

DocType to output.

Exceptions
IOException:
if there's any problem writing.
NullPointerException:
if the input content is null
processback to summary
public void process(Writer out, Format format, Element element) throws IOException

Print out an Element, including its Attributes, and all contained (child) elements, etc.

Parameters
out:Writer

Writer to use.

format:Format

Format instance specifying output style

element:Element

Element to output.

Exceptions
IOException:
if there's any problem writing.
NullPointerException:
if the input content is null
processback to summary
public void process(Writer out, Format format, List<? extends Content> list) throws IOException

This will handle printing out a list of nodes. This can be useful for printing the content of an element that contains HTML, like "<description>JDOM is <b>fun>!</description>".

Parameters
out:Writer

Writer to use.

format:Format

Format instance specifying output style

list:List<? extends Content>

List of nodes.

Exceptions
IOException:
if there's any problem writing.
NullPointerException:
if the input list is null or contains null members
ClassCastException:
if any of the list members are not Content
processback to summary
public void process(Writer out, Format format, CDATA cdata) throws IOException

Print out a CDATA node.

Parameters
out:Writer

Writer to use.

format:Format

Format instance specifying output style

cdata:CDATA

CDATA to output.

Exceptions
IOException:
if there's any problem writing.
NullPointerException:
if the input content is null
processback to summary
public void process(Writer out, Format format, Text text) throws IOException

Print out a Text node. Performs the necessary entity escaping and whitespace stripping.

Parameters
out:Writer

Writer to use.

format:Format

Format instance specifying output style

text:Text

Text to output.

Exceptions
IOException:
if there's any problem writing.
NullPointerException:
if the input content is null
processback to summary
public void process(Writer out, Format format, Comment comment) throws IOException

Print out a Comment.

Parameters
out:Writer

Writer to use.

format:Format

Format instance specifying output style

comment:Comment

Comment to output.

Exceptions
IOException:
if there's any problem writing.
NullPointerException:
if the input content is null
processback to summary
public void process(Writer out, Format format, ProcessingInstruction pi) throws IOException

Print out a ProcessingInstruction.

Parameters
out:Writer

Writer to use.

format:Format

Format instance specifying output style

pi:ProcessingInstruction

ProcessingInstruction to output.

Exceptions
IOException:
if there's any problem writing.
NullPointerException:
if the input content is null
processback to summary
public void process(Writer out, Format format, EntityRef entity) throws IOException

Print out a EntityRef.

Parameters
out:Writer

Writer to use.

format:Format

Format instance specifying output style

entity:EntityRef

EntityRef to output.

Exceptions
IOException:
if there's any problem writing.
NullPointerException:
if the input content is null