|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.codehaus.jackson.JsonGenerator
org.codehaus.jackson.impl.JsonGeneratorBase
org.codehaus.jackson.impl.WriterBasedGenerator
public final class WriterBasedGenerator
| Nested Class Summary |
|---|
| Nested classes/interfaces inherited from class org.codehaus.jackson.JsonGenerator |
|---|
JsonGenerator.Feature |
| Field Summary | |
|---|---|
protected char[] |
_entityBuffer
6-char temporary buffer allocated if needed, for constructing escape sequences |
protected IOContext |
_ioContext
|
protected char[] |
_outputBuffer
Intermediate buffer in which contents are buffered before being written using _writer. |
protected int |
_outputEnd
End marker of the output buffer; one past the last valid position within the buffer. |
protected int |
_outputHead
Pointer to the first buffered character to output |
protected int |
_outputTail
Pointer to the position right beyond the last character to output (end marker; may be past the buffer) |
protected java.io.Writer |
_writer
|
| Fields inherited from class org.codehaus.jackson.impl.JsonGeneratorBase |
|---|
_closed, _features, _objectCodec, _writeContext |
| Fields inherited from class org.codehaus.jackson.JsonGenerator |
|---|
_cfgPrettyPrinter |
| Constructor Summary | |
|---|---|
WriterBasedGenerator(IOContext ctxt,
int features,
ObjectCodec codec,
java.io.Writer w)
|
|
| Method Summary | |
|---|---|
protected void |
_flushBuffer()
|
protected void |
_releaseBuffers()
|
protected void |
_verifyPrettyValueWrite(java.lang.String typeMsg,
int status)
|
protected void |
_verifyValueWrite(java.lang.String typeMsg)
|
protected void |
_writeBinary(Base64Variant b64variant,
byte[] input,
int inputPtr,
int inputEnd)
|
protected void |
_writeEndArray()
|
protected void |
_writeEndObject()
|
protected void |
_writeFieldName(java.lang.String name,
boolean commaBefore)
|
protected void |
_writePPFieldName(java.lang.String name,
boolean commaBefore)
Specialized version of _writeFieldName, off-lined
to keep the "fast path" as simple (and hopefully fast) as possible. |
protected void |
_writeStartArray()
|
protected void |
_writeStartObject()
|
void |
close()
Method called to close this generator, so that no more content can be written. |
void |
flush()
Method called to flush any buffered content to the underlying target (output stream, writer), and to flush the target itself as well. |
void |
writeBinary(Base64Variant b64variant,
byte[] data,
int offset,
int len)
Method that will output given chunk of binary data as base64 encoded, as a complete String value (surrounded by double quotes). |
void |
writeBoolean(boolean state)
Method for outputting literal Json boolean value (one of Strings 'true' and 'false'). |
void |
writeNull()
Method for outputting literal Json null value. |
void |
writeNumber(java.math.BigDecimal dec)
Method for outputting indicate Json numeric value. |
void |
writeNumber(java.math.BigInteger v)
Method for outputting given value as Json number. |
void |
writeNumber(double d)
Method for outputting indicate Json numeric value. |
void |
writeNumber(float f)
Method for outputting indicate Json numeric value. |
void |
writeNumber(int i)
Method for outputting given value as Json number. |
void |
writeNumber(long l)
Method for outputting given value as Json number. |
void |
writeNumber(java.lang.String encodedValue)
Write method that can be used for custom numeric types that can not be (easily?) converted to "standard" Java number types. |
void |
writeObject(java.lang.Object value)
Method for writing given Java object (POJO) as Json. |
void |
writeRaw(char c)
|
void |
writeRaw(char[] text,
int offset,
int len)
|
void |
writeRaw(java.lang.String text)
Fallback method which can be used to make generator copy input text verbatim with no modifications (including that no quoting is done and no separators are added even if context [array, object] would otherwise require such). |
void |
writeRaw(java.lang.String text,
int start,
int len)
|
void |
writeRawValue(char[] text,
int offset,
int len)
|
void |
writeRawValue(java.lang.String text)
Fallback method which can be used to make generator copy input text verbatim without any modifications, but assuming it must constitute a single legal Json value (number, string, boolean, null, Array or List). |
void |
writeRawValue(java.lang.String text,
int offset,
int len)
|
void |
writeString(char[] text,
int offset,
int len)
|
void |
writeString(java.lang.String text)
Method for outputting a String value. |
void |
writeTree(JsonNode rootNode)
Method for writing given Json tree (expressed as a tree where given JsonNode is the root) using this generator. |
| Methods inherited from class org.codehaus.jackson.impl.JsonGeneratorBase |
|---|
_cantHappen, _reportError, copyCurrentEvent, copyCurrentStructure, disableFeature, enableFeature, getCodec, getOutputContext, isClosed, isFeatureEnabled, setCodec, useDefaultPrettyPrinter, writeEndArray, writeEndObject, writeFieldName, writeStartArray, writeStartObject |
| Methods inherited from class org.codehaus.jackson.JsonGenerator |
|---|
setFeature, setPrettyPrinter, writeArrayFieldStart, writeBinary, writeBinary, writeBooleanField, writeNullField, writeNumberField, writeNumberField, writeNumberField, writeNumberField, writeNumberField, writeObjectField, writeObjectFieldStart, writeStringField |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
protected final IOContext _ioContext
protected final java.io.Writer _writer
protected char[] _outputBuffer
_writer.
protected int _outputHead
protected int _outputTail
protected int _outputEnd
protected char[] _entityBuffer
| Constructor Detail |
|---|
public WriterBasedGenerator(IOContext ctxt,
int features,
ObjectCodec codec,
java.io.Writer w)
| Method Detail |
|---|
protected void _writeStartArray()
throws java.io.IOException,
JsonGenerationException
_writeStartArray in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
protected void _writeEndArray()
throws java.io.IOException,
JsonGenerationException
_writeEndArray in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
protected void _writeStartObject()
throws java.io.IOException,
JsonGenerationException
_writeStartObject in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
protected void _writeEndObject()
throws java.io.IOException,
JsonGenerationException
_writeEndObject in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
protected void _writeFieldName(java.lang.String name,
boolean commaBefore)
throws java.io.IOException,
JsonGenerationException
_writeFieldName in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
protected final void _writePPFieldName(java.lang.String name,
boolean commaBefore)
throws java.io.IOException,
JsonGenerationException
_writeFieldName, off-lined
to keep the "fast path" as simple (and hopefully fast) as possible.
java.io.IOException
JsonGenerationException
public void writeString(java.lang.String text)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeString in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeString(char[] text,
int offset,
int len)
throws java.io.IOException,
JsonGenerationException
writeString in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeRaw(java.lang.String text)
throws java.io.IOException,
JsonGenerationException
JsonGeneratorJsonGenerator.writeRawValue(String) instead.
writeRaw in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeRaw(java.lang.String text,
int start,
int len)
throws java.io.IOException,
JsonGenerationException
writeRaw in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeRaw(char[] text,
int offset,
int len)
throws java.io.IOException,
JsonGenerationException
writeRaw in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeRaw(char c)
throws java.io.IOException,
JsonGenerationException
writeRaw in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeRawValue(java.lang.String text)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeRawValue in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeRawValue(java.lang.String text,
int offset,
int len)
throws java.io.IOException,
JsonGenerationException
writeRawValue in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeRawValue(char[] text,
int offset,
int len)
throws java.io.IOException,
JsonGenerationException
writeRawValue in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeBinary(Base64Variant b64variant,
byte[] data,
int offset,
int len)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
Note: because Json Strings can not contain unescaped linefeeds,
if linefeeds are included (as per last argument), they must be
escaped. This adds overhead for decoding without improving
readability.
Alternatively if linefeeds are not included,
resulting String value may violate the requirement of base64
RFC which mandates line-length of 76 characters and use of
linefeeds. However, all JsonParser implementations
are required to accept such "long line base64"; as do
typical production-level base64 decoders.
writeBinary in class JsonGeneratorb64variant - Base64 variant to use: defines details such as
whether padding is used (and if so, using which character);
what is the maximum line length before adding linefeed,
and also the underlying alphabet to use.
java.io.IOException
JsonGenerationException
public void writeNumber(int i)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeNumber in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
public void writeNumber(long l)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeNumber in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
public void writeNumber(java.math.BigInteger v)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeNumber in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeNumber(double d)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeNumber in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
public void writeNumber(float f)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeNumber in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
public void writeNumber(java.math.BigDecimal dec)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeNumber in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
public void writeNumber(java.lang.String encodedValue)
throws java.io.IOException,
JsonGenerationException
JsonGeneratorJsonGenerator.writeString(java.lang.String) method can not be used; nor
JsonGenerator.writeRaw(java.lang.String) because that does not properly handle
value separators needed in Array or Object contexts.
Note: because of lack of type safety, some generator
implementations may not be able to implement this
method. For example, if a binary json format is used,
it may require type information for encoding; similarly
for generator-wrappers around Java objects or Json nodes.
If implementation does not implement this method,
it needs to throw UnsupportedOperationException.
writeNumber in class JsonGeneratorjava.io.IOException
JsonGenerationException
public void writeBoolean(boolean state)
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeBoolean in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
public void writeNull()
throws java.io.IOException,
JsonGenerationException
JsonGenerator
writeNull in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
public final void writeObject(java.lang.Object value)
throws java.io.IOException,
JsonProcessingException
JsonGenerator
writeObject in class JsonGeneratorBasejava.io.IOException
JsonProcessingException
public final void writeTree(JsonNode rootNode)
throws java.io.IOException,
JsonProcessingException
JsonGeneratorJsonGenerator.writeObject(java.lang.Object) with given node, but is added
for convenience and to make code more explicit in cases
where it deals specifically with trees.
writeTree in class JsonGeneratorBasejava.io.IOException
JsonProcessingException
protected final void _verifyValueWrite(java.lang.String typeMsg)
throws java.io.IOException,
JsonGenerationException
_verifyValueWrite in class JsonGeneratorBasejava.io.IOException
JsonGenerationException
protected final void _verifyPrettyValueWrite(java.lang.String typeMsg,
int status)
throws java.io.IOException,
JsonGenerationException
java.io.IOException
JsonGenerationException
public final void flush()
throws java.io.IOException
JsonGenerator
flush in class JsonGeneratorBasejava.io.IOException
public void close()
throws java.io.IOException
JsonGenerator
Whether the underlying target (stream, writer) gets closed depends
on whether this generator either manages the target (i.e. is the
only one with access to the target -- case if caller passes a
reference to the resource such as File, but not stream); or
has feature JsonGenerator.Feature.AUTO_CLOSE_TARGET enabled.
If either of above is true, the target is also closed. Otherwise
(not managing, feature not enabled), target is not closed.
close in class JsonGeneratorBasejava.io.IOExceptionprotected void _releaseBuffers()
_releaseBuffers in class JsonGeneratorBase
protected void _writeBinary(Base64Variant b64variant,
byte[] input,
int inputPtr,
int inputEnd)
throws java.io.IOException,
JsonGenerationException
java.io.IOException
JsonGenerationException
protected final void _flushBuffer()
throws java.io.IOException
java.io.IOException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||