Package org.vast.swe.fast
Class JsonArrayDataWriterGson
java.lang.Object
org.vast.swe.fast.DataBlockProcessor
org.vast.swe.fast.AbstractDataWriter
org.vast.swe.fast.JsonDataWriterGson
org.vast.swe.fast.JsonArrayDataWriterGson
- All Implemented Interfaces:
DataComponentVisitor
,DataStreamWriter
Implementation of JSON data writer for writing array data inline, as a JSON array of elements where each element is itself a flat array of mixed types.
This particular implementation is based on Gson JsonWriter.
- Since:
- Sep 29, 2023
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected class
protected class
protected class
protected class
Nested classes/interfaces inherited from class org.vast.swe.fast.JsonDataWriterGson
JsonDataWriterGson.BooleanWriter, JsonDataWriterGson.DoubleWriter, JsonDataWriterGson.FloatWriter, JsonDataWriterGson.GeometryWriter, JsonDataWriterGson.IntegerWriter, JsonDataWriterGson.IsoDateTimeWriter, JsonDataWriterGson.JsonAtomWriter, JsonDataWriterGson.RoundingDecimalWriter, JsonDataWriterGson.StringWriter, JsonDataWriterGson.ValueWriter
Nested classes/interfaces inherited from class org.vast.swe.fast.DataBlockProcessor
DataBlockProcessor.ArrayProcessor, DataBlockProcessor.ArraySizeSupplier, DataBlockProcessor.AtomProcessor, DataBlockProcessor.BaseProcessor, DataBlockProcessor.ChoiceProcessor, DataBlockProcessor.CompositeProcessor, DataBlockProcessor.ImplicitSizeProcessor, DataBlockProcessor.RecordProcessor
-
Field Summary
Fields inherited from class org.vast.swe.fast.JsonDataWriterGson
countWriters, wrapWithJsonArray, writer
Fields inherited from class org.vast.swe.fast.AbstractDataWriter
dataEncoding, lastArrayElt, parentArray
Fields inherited from class org.vast.swe.fast.DataBlockProcessor
dataComponents, enableSubTree, filter, hasVarSizeArray, processorStack, processorTreeReady, rootProcessor
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
protected void
endRecordIfRoot
(DataBlockProcessor.AtomProcessor processor) protected DataBlockProcessor.ArrayProcessor
getArrayProcessor
(DataArray array) protected DataBlockProcessor.ChoiceProcessor
getChoiceProcessor
(DataChoice choice) protected DataBlockProcessor.ImplicitSizeProcessor
protected DataBlockProcessor.AtomProcessor
getRangeProcessor
(RangeComponent range) protected DataBlockProcessor.RecordProcessor
getRecordProcessor
(DataRecord record) protected DataBlockProcessor.RecordProcessor
getVectorProcessor
(Vector vect) Methods inherited from class org.vast.swe.fast.JsonDataWriterGson
close, endStream, flush, getArraySizeSupplier, init, reset, setOutput, startStream, visit, visit, visit, visit, visit, visit, visit, writeInline
Methods inherited from class org.vast.swe.fast.AbstractDataWriter
getDataEncoding, getDataHandler, getErrorHandler, getRawDataHandler, setDataEncoding, setDataHandler, setErrorHandler, setParentArray, setRawDataHandler, stop, write, write
Methods inherited from class org.vast.swe.fast.DataBlockProcessor
addToProcessorTree, checkEnabled, getDataComponents, setDataComponentFilter, setDataComponents, setEnabled, visit, visit, visit, visit, visit, visit, visit, visit, visitRange
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface org.vast.cdm.common.DataStreamWriter
getDataComponents, setDataComponents
-
Constructor Details
-
JsonArrayDataWriterGson
public JsonArrayDataWriterGson() -
JsonArrayDataWriterGson
public JsonArrayDataWriterGson(com.google.gson.stream.JsonWriter writer)
-
-
Method Details
-
beginRecordIfRoot
- Throws:
IOException
-
endRecordIfRoot
- Throws:
IOException
-
getRangeProcessor
- Overrides:
getRangeProcessor
in classJsonDataWriterGson
-
getRecordProcessor
- Overrides:
getRecordProcessor
in classJsonDataWriterGson
-
getVectorProcessor
- Overrides:
getVectorProcessor
in classJsonDataWriterGson
-
getChoiceProcessor
- Overrides:
getChoiceProcessor
in classJsonDataWriterGson
-
getArrayProcessor
- Overrides:
getArrayProcessor
in classJsonDataWriterGson
-
getImplicitSizeProcessor
- Overrides:
getImplicitSizeProcessor
in classJsonDataWriterGson
-