public class JsonReceiver extends java.lang.Object implements Receiver
Constructor and Description |
---|
JsonReceiver(PipelineConfiguration pipe,
XPathContext context,
UniStringConsumer output) |
Modifier and Type | Method and Description |
---|---|
void |
characters(UnicodeString chars,
Location locationId,
int properties)
Notify character data.
|
void |
close()
Notify the end of the event stream
|
void |
comment(UnicodeString content,
Location locationId,
int properties)
Notify a comment.
|
void |
endDocument()
Notify the end of a document node
|
void |
endElement()
Notify the end of an element.
|
static java.lang.String |
escape(java.lang.String in,
boolean forXml,
java.util.function.IntPredicate hexEscapes)
Escape a string using backslash escape sequences as defined in JSON
|
Function |
getNumberFormatter() |
PipelineConfiguration |
getPipelineConfiguration()
Get the pipeline configuration
|
java.lang.String |
getSystemId() |
boolean |
isIndenting() |
void |
open()
Notify the start of the event stream
|
void |
processingInstruction(java.lang.String name,
UnicodeString data,
Location locationId,
int properties)
Output a processing instruction
|
void |
setIndenting(boolean indenting) |
void |
setNumberFormatter(Function formatter) |
void |
setPipelineConfiguration(PipelineConfiguration pipe)
Set the pipeline configuration
|
void |
setSystemId(java.lang.String systemId) |
void |
setUnparsedEntity(java.lang.String name,
java.lang.String systemID,
java.lang.String publicID)
Notify an unparsed entity URI.
|
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
|
boolean |
usesTypeAnnotations()
Ask whether this Receiver (or the downstream pipeline) makes any use of the type annotations
supplied on element and attribute events.
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
append, append, handlesAppend
public JsonReceiver(PipelineConfiguration pipe, XPathContext context, UniStringConsumer output)
public void setPipelineConfiguration(PipelineConfiguration pipe)
Receiver
setPipelineConfiguration
in interface Receiver
pipe
- the pipeline configurationpublic PipelineConfiguration getPipelineConfiguration()
Receiver
getPipelineConfiguration
in interface Receiver
public void setSystemId(java.lang.String systemId)
setSystemId
in interface javax.xml.transform.Result
public void setIndenting(boolean indenting)
public boolean isIndenting()
public void setNumberFormatter(Function formatter)
public Function getNumberFormatter()
public void open() throws XPathException
Receiver
open
in interface Receiver
XPathException
- if an error occurspublic void startDocument(int properties) throws XPathException
Receiver
startDocument
in interface Receiver
properties
- bit-significant integer indicating properties of the document node.
The definitions of the bits are in class ReceiverOption
XPathException
- if an error occurspublic void endDocument() throws XPathException
Receiver
endDocument
in interface Receiver
XPathException
- if an error occurspublic void setUnparsedEntity(java.lang.String name, java.lang.String systemID, java.lang.String publicID) throws XPathException
Receiver
setUnparsedEntity
in interface Receiver
name
- The name of the unparsed entitysystemID
- The system identifier of the unparsed entitypublicID
- The identifier of the unparsed entityXPathException
- if an error occurspublic void startElement(NodeName elemName, SchemaType type, AttributeMap attributes, NamespaceMap namespaces, Location location, int properties) throws XPathException
Receiver
startElement
in interface Receiver
elemName
- 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 ReceiverOption
XPathException
- if an error occurspublic void endElement() throws XPathException
Receiver
endElement
in interface Receiver
XPathException
- if an error occurspublic static java.lang.String escape(java.lang.String in, boolean forXml, java.util.function.IntPredicate hexEscapes) throws XPathException
in
- the input stringforXml
- true if the output is for the json-to-xml functionhexEscapes
- a predicate identifying characters that should be output as hex escapes using \ u XXXX notation.XPathException
- if the input contains invalid escape sequencespublic void characters(UnicodeString chars, Location locationId, int properties) throws XPathException
Receiver
characters
in interface Receiver
chars
- The characterslocationId
- provides information such as line number and system ID.properties
- Bit significant value. The following bits are defined:
XPathException
- if an error occurspublic void processingInstruction(java.lang.String name, UnicodeString data, Location locationId, int properties) throws XPathException
Receiver
processingInstruction
in interface Receiver
name
- The PI name. This must be a legal name (it will not be checked).data
- The data portion of the processing instructionlocationId
- provides information such as line number and system ID.properties
- Additional information about the PI.XPathException
- if an error occurspublic void comment(UnicodeString content, Location locationId, int properties) throws XPathException
Receiver
comment
in interface Receiver
content
- The content of the commentlocationId
- provides information such as line number and system ID.properties
- Additional information about the comment.XPathException
- if an error occurspublic void close() throws XPathException
Receiver
close
in interface Receiver
XPathException
- if an error occurspublic boolean usesTypeAnnotations()
Receiver
usesTypeAnnotations
in interface Receiver
public java.lang.String getSystemId()
getSystemId
in interface javax.xml.transform.Result
Copyright (c) 2004-2022 Saxonica Limited. All rights reserved.