public abstract class SequenceReceiver extends java.lang.Object implements Receiver
Modifier and Type | Field and Description |
---|---|
protected PipelineConfiguration |
pipelineConfiguration |
protected boolean |
previousAtomic |
protected java.lang.String |
systemId |
Constructor and Description |
---|
SequenceReceiver(PipelineConfiguration pipe)
Create a SequenceReceiver
|
Modifier and Type | Method and Description |
---|---|
void |
append(Item item)
Append an arbitrary item (node, atomic value, or function) to the output.
|
abstract void |
append(Item item,
Location locationId,
int properties)
Append an arbitrary item (node, atomic value, or function) to the output
|
protected void |
decompose(Item item,
Location locationId,
int copyNamespaces)
Helper method for subclasses to invoke if required: decompose an item into a sequence
of node events.
|
protected void |
flatten(ArrayItem array,
Location locationId,
int copyNamespaces)
Helper method for subclasses to invoke if required: flatten an array.
|
Configuration |
getConfiguration()
Get the Saxon Configuration
|
protected java.lang.String |
getErrorCodeForDecomposingFunctionItems() |
NamePool |
getNamePool()
Get the name pool
|
PipelineConfiguration |
getPipelineConfiguration()
Get the pipeline configuration
|
java.lang.String |
getSystemId()
Get the system ID
|
boolean |
handlesAppend()
Ask whether this Receiver can handle arbitrary items in its
Outputter.append(net.sf.saxon.om.Item, net.sf.saxon.s9api.Location, int) and
Outputter.append(Item, Location, int) methods. |
void |
open()
Start the output process
|
void |
setPipelineConfiguration(PipelineConfiguration pipelineConfiguration)
Set the pipeline configuration
|
void |
setSystemId(java.lang.String systemId)
Set the system ID
|
void |
setUnparsedEntity(java.lang.String name,
java.lang.String systemID,
java.lang.String publicID)
Notify an unparsed entity URI.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
characters, close, comment, endDocument, endElement, processingInstruction, startDocument, startElement, usesTypeAnnotations
protected boolean previousAtomic
protected PipelineConfiguration pipelineConfiguration
protected java.lang.String systemId
public SequenceReceiver(PipelineConfiguration pipe)
pipe
- the pipeline configurationpublic final PipelineConfiguration getPipelineConfiguration()
Receiver
getPipelineConfiguration
in interface Receiver
public void setPipelineConfiguration(PipelineConfiguration pipelineConfiguration)
Receiver
setPipelineConfiguration
in interface Receiver
pipelineConfiguration
- the pipeline configurationpublic final Configuration getConfiguration()
public void setSystemId(java.lang.String systemId)
setSystemId
in interface javax.xml.transform.Result
setSystemId
in interface Receiver
systemId
- the URI used to identify the tree being passed across this interfacepublic java.lang.String getSystemId()
getSystemId
in interface javax.xml.transform.Result
public void setUnparsedEntity(java.lang.String name, java.lang.String systemID, java.lang.String publicID) throws XPathException
setUnparsedEntity
in interface Receiver
name
- The name of the unparsed entitysystemID
- The system identifier of the unparsed entitypublicID
- The public identifier of the unparsed entityXPathException
- if an error occurspublic void open() throws XPathException
open
in interface Receiver
XPathException
- if an error occurspublic abstract void append(Item item, Location locationId, int properties) throws XPathException
append
in interface Receiver
item
- the item to be appendedlocationId
- 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) meansXPathException
- if an error occurspublic void append(Item item) throws XPathException
append
in interface Receiver
item
- the item to be appendedXPathException
- if the operation failspublic NamePool getNamePool()
protected void flatten(ArrayItem array, Location locationId, int copyNamespaces) throws XPathException
SequenceReceiver
by calling its method
array
- the array to be flattenedlocationId
- the location of the instruction triggering this operationcopyNamespaces
- options for copying namespace nodesXPathException
- if things go wrongprotected void decompose(Item item, Location locationId, int copyNamespaces) throws XPathException
item
- the item to be decomposed (that is, to be delivered to this SequenceReceiver
as a sequence of separate eventslocationId
- the location of the originating instructioncopyNamespaces
- options for copying namespace nodesXPathException
- if things go wrongprotected java.lang.String getErrorCodeForDecomposingFunctionItems()
public boolean handlesAppend()
Outputter.append(net.sf.saxon.om.Item, net.sf.saxon.s9api.Location, int)
and
Outputter.append(Item, Location, int)
methods. If it cannot, then calling
these methods will raise an exception (typically but not necessarily an
UnsupportedOperationException
). This implementation returns true.handlesAppend
in interface Receiver
Outputter.append(net.sf.saxon.om.Item, net.sf.saxon.s9api.Location, int)
and Outputter.append(Item, Location, int)
methods. A
receiver that returns true may still reject some kinds of item, for example
it may reject function items.Copyright (c) 2004-2020 Saxonica Limited. All rights reserved.