public class SequenceWriter extends Object implements Versioned, Closeable, Flushable
ObjectWriter
, except that it can be used
for writing sequences of values, not just a single value.
The main use case is in writing very long sequences, or sequences where
values are incrementally produced; cases where it would be impractical
or at least inconvenient to construct a wrapper container around values
(or where no JSON array is desired around values).
Differences from ObjectWriter
include:
SequenceWriter
are stateful, and not thread-safe:
if sharing, external synchronization must be used.
close()
is needed after all values have been written
(ObjectWriter
can auto-close after individual value writes)
Constructor and Description |
---|
SequenceWriter(DefaultSerializerProvider prov,
JsonGenerator gen,
boolean closeGenerator,
ObjectWriter.Prefetch prefetch) |
Modifier and Type | Method and Description |
---|---|
void |
close() |
void |
flush() |
SequenceWriter |
init(boolean wrapInArray) |
Version |
version()
Method that will return version information stored in and read from jar
that contains this class.
|
SequenceWriter |
write(Object value)
Method for writing given value into output, as part of sequence
to write.
|
SequenceWriter |
write(Object value,
JavaType type)
Method for writing given value into output, as part of sequence
to write; further, full type (often generic, like
Map
is passed in case a new
JsonSerializer needs to be fetched to handle type
If root type was specified for ObjectWriter ,
value must be of compatible type (same or subtype). |
<C extends Collection<?>> |
writeAll(C container) |
SequenceWriter |
writeAll(Iterable<?> iterable) |
SequenceWriter |
writeAll(Object[] value) |
public SequenceWriter(DefaultSerializerProvider prov, JsonGenerator gen, boolean closeGenerator, ObjectWriter.Prefetch prefetch) throws IOException
IOException
public SequenceWriter init(boolean wrapInArray) throws IOException
IOException
public Version version()
public SequenceWriter write(Object value) throws IOException
ObjectWriter
,
value must be of compatible type (same or subtype).IOException
public SequenceWriter write(Object value, JavaType type) throws IOException
Map
is passed in case a new
JsonSerializer
needs to be fetched to handle type
If root type was specified for ObjectWriter
,
value must be of compatible type (same or subtype).IOException
public SequenceWriter writeAll(Object[] value) throws IOException
IOException
public <C extends Collection<?>> SequenceWriter writeAll(C container) throws IOException
IOException
public SequenceWriter writeAll(Iterable<?> iterable) throws IOException
IOException
public void flush() throws IOException
flush
in interface Flushable
IOException
public void close() throws IOException
close
in interface Closeable
close
in interface AutoCloseable
IOException
Copyright © 2010 - 2020 Adobe. All Rights Reserved