public class OutputterEventBuffer extends Outputter
Note that events are retained along with their properties, so the class implements "sticky disable-output-escaping" - text nodes can have selected characters marked with the disable-escaping property.
pipelineConfiguration, systemId| Constructor and Description |
|---|
OutputterEventBuffer() |
| Modifier and Type | Method and Description |
|---|---|
void |
append(Item item,
Location location,
int properties)
Append an arbitrary item (node, atomic value, or function) to the output.
|
void |
attribute(NodeName name,
SimpleType type,
java.lang.CharSequence value,
Location location,
int properties)
Notify an attribute.
|
void |
characters(java.lang.CharSequence chars,
Location location,
int properties)
Notify character data.
|
void |
close()
Notify the end of the event stream
|
void |
comment(java.lang.CharSequence content,
Location location,
int properties)
Notify a comment.
|
void |
endDocument()
Notify the end of a document node
|
void |
endElement()
Notify the end of an element.
|
boolean |
isEmpty() |
void |
namespace(java.lang.String prefix,
java.lang.String uri,
int properties)
Notify a namespace binding.
|
void |
processingInstruction(java.lang.String name,
java.lang.CharSequence data,
Location location,
int properties)
Output a processing instruction
|
void |
replay(Outputter out)
Replay the captured events to a supplied destination
|
void |
reset() |
void |
setBuffer(java.util.List<OutputterEvent> buffer) |
void |
startContent()
Notify the start of the content, that is, the completion of all attributes and namespaces.
|
void |
startDocument(int properties)
Notify the start of a document node
|
void |
startElement(NodeName elemName,
SchemaType type,
AttributeMap attributes,
NamespaceMap namespaces,
Location location,
int properties)
Notify the start of an element, supplying all attributes and namespaces
|
void |
startElement(NodeName elemName,
SchemaType typeCode,
Location location,
int properties)
Notify the start of an element.
|
append, getConfiguration, getPipelineConfiguration, getStringReceiver, getSystemId, namespaces, open, setPipelineConfiguration, setSystemId, setUnparsedEntity, usesTypeAnnotationsclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waithandlesAppendpublic void setBuffer(java.util.List<OutputterEvent> buffer)
public void startDocument(int properties)
throws XPathException
OutputterstartDocument in interface ReceiverstartDocument in class Outputterproperties - bit-significant integer indicating properties of the document node.
The definitions of the bits are in class ReceiverOptionXPathException - if an error occurspublic void endDocument()
throws XPathException
OutputterendDocument in interface ReceiverendDocument in class OutputterXPathException - if an error occurspublic void startElement(NodeName elemName, SchemaType typeCode, Location location, int properties)
OutputterstartElement() must be followed
by calls on Outputter.attribute(NodeName, SimpleType, CharSequence, Location, int) and
Outputter.namespace(String, String, int) to supply the attributes and namespaces; these calls
may be terminated by a call on Outputter.startContent() but this is not mandatory.startElement in class OutputterelemName - the name of the element.typeCode - the type annotation of the element.location - an object providing information about the module, line, and column where the node originatedproperties - bit-significant properties of the element node. If there are no relevant
properties, zero is supplied. The definitions of the bits are in class ReceiverOptionpublic void startElement(NodeName elemName, SchemaType type, AttributeMap attributes, NamespaceMap namespaces, Location location, int properties) throws XPathException
OutputterstartElement in interface ReceiverstartElement in class OutputterelemName - the name of the element.type - the type annotation of the element.attributes - the attributes of this elementnamespaces - the in-scope namespaces of this element: generally this is all the in-scope
namespaces, without relying on inheriting namespaces from parent elementslocation - an object providing information about the module, line, and column where the node originatedproperties - bit-significant properties of the element node. If there are no relevant
properties, zero is supplied. The definitions of the bits are in class ReceiverOptionXPathException - if an error occurspublic void attribute(NodeName name, SimpleType type, java.lang.CharSequence value, Location location, int properties)
Outputterattribute in class Outputtername - The name of the attributetype - The type annotation of the attributevalue - the string value of the attributelocation - provides information such as line number and system ID.properties - Bit significant value. The following bits are defined:
public void namespace(java.lang.String prefix,
java.lang.String uri,
int properties)
Outputternamespace in class Outputterprefix - The namespace prefix; zero-length string for the default namespaceuri - The namespace URI. In some cases a zero-length string may be used to
indicate a namespace undeclaration.properties - The REJECT_DUPLICATES property: if set, the
namespace declaration will be rejected if it conflicts with a previous declaration of the same
prefix. If the property is not set, the namespace declaration will be ignored if it conflicts
with a previous declaration. This reflects the fact that when copying a tree, namespaces for child
elements are emitted before the namespaces of their parent element. Unfortunately this conflicts
with the XSLT rule for complex content construction, where the recovery action in the event of
conflicts is to take the namespace that comes last. XSLT therefore doesn't recover from this error:public void startContent()
OutputterstartContent in class Outputterpublic void endElement()
throws XPathException
OutputterendElement in interface ReceiverendElement in class OutputterXPathException - if an error occurspublic void characters(java.lang.CharSequence chars,
Location location,
int properties)
Outputtercharacters in interface Receivercharacters in class Outputterchars - The characterslocation - provides information such as line number and system ID.properties - Bit significant value. The following bits are defined:
public void processingInstruction(java.lang.String name,
java.lang.CharSequence data,
Location location,
int properties)
OutputterprocessingInstruction in interface ReceiverprocessingInstruction in class Outputtername - The PI name. This must be a legal name (it will not be checked).data - The data portion of the processing instructionlocation - provides information such as line number and system ID.properties - Additional information about the PI.public void comment(java.lang.CharSequence content,
Location location,
int properties)
Outputterpublic void append(Item item, Location location, int properties)
OutputterUnsupportedOperationException.append in interface Receiverappend in class Outputteritem - the item to be appendedlocation - the location of the calling instruction, for diagnosticsproperties - if the item is an element node, this indicates whether its namespaces
need to be copied. Values are ReceiverOption.ALL_NAMESPACES; the default (0) meanspublic void close()
Outputterpublic void replay(Outputter out) throws XPathException
out - the destination Receiver to receive the eventsXPathException - if any error occurspublic boolean isEmpty()
public void reset()
Copyright (c) 2004-2020 Saxonica Limited.