Package net.sf.saxon.serialize
Class JSONEmitter
java.lang.Object
net.sf.saxon.serialize.JSONEmitter
This class implements the back-end text generation of the JSON serialization method. It takes
as input a sequence of event-based calls such as startArray, endArray, startMap, endMap,
and generates the lexical JSON output.
-
Constructor Summary
ConstructorsConstructorDescriptionJSONEmitter
(PipelineConfiguration pipe, UnicodeWriter writer, Properties outputProperties) -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
End of the document.void
endArray()
Output the end of an arrayvoid
endMap()
Get the output propertiesvoid
Set the CharacterMap to be used, if anyvoid
setMustClose
(boolean mustClose) Say whether the output must be closed on completionvoid
Set the Unicode normalizer to be used for normalizing strings.void
setOutputProperties
(Properties details) Set output propertiesvoid
startArray
(boolean oneLiner) Output the start of an array.void
startMap
(boolean oneLiner) Output the start of an map.void
writeAtomicValue
(AtomicValue item) Append a singleton value (number, string, or boolean) to the outputvoid
Output the key for an entry in a map.void
writeStringValue
(String str) Append a singleton string value to the output
-
Constructor Details
-
JSONEmitter
-
-
Method Details
-
setOutputProperties
Set output properties- Parameters:
details
- the output serialization properties
-
setMustClose
public void setMustClose(boolean mustClose) Say whether the output must be closed on completion- Parameters:
mustClose
- true if the output must be closed
-
getOutputProperties
Get the output properties- Returns:
- the properties that were set using setOutputProperties
-
setNormalizationForm
Set the Unicode normalizer to be used for normalizing strings.- Parameters:
form
- the normalization form to be used (default is no normalization)
-
setCharacterMap
Set the CharacterMap to be used, if any- Parameters:
map
- the character map
-
writeKey
Output the key for an entry in a map. The corresponding value must be supplied in the following call.- Parameters:
key
- the value of the key, without any escaping of special characters- Throws:
XPathException
- if any error occurs
-
writeAtomicValue
Append a singleton value (number, string, or boolean) to the output- Parameters:
item
- the atomic value to be appended, or null to append "null"- Throws:
XPathException
- if the operation fails
-
writeStringValue
Append a singleton string value to the output- Parameters:
str
- the string value to be appended- Throws:
XPathException
- if the operation fails
-
startArray
Output the start of an array. This call must be followed by the members of the array, followed by a call onendArray()
.- Parameters:
oneLiner
- True if the caller thinks the value should be output without extra newlines after the open bracket or before the close bracket, even when indenting is on.- Throws:
XPathException
- if any failure occurs
-
endArray
Output the end of an array- Throws:
XPathException
- if any failure occurs
-
startMap
Output the start of an map. This call must be followed by the entries in the map (each starting with a call onwriteKey(String)
, followed by a call onendMap()
.- Parameters:
oneLiner
- True if the caller thinks the value should be output without extra newlines after the open bracket or before the close bracket, even when indenting is on.- Throws:
XPathException
- if any failure occurs
-
endMap
- Throws:
XPathException
-
close
End of the document.- Throws:
XPathException
- if any error occurs
-