Package org.vast.swe.fast
Class TextDataParser
java.lang.Object
org.vast.swe.fast.DataBlockProcessor
org.vast.swe.fast.AbstractDataParser
org.vast.swe.fast.TextDataParser
- All Implemented Interfaces:
DataComponentVisitor
,DataStreamParser
New implementation of text data parser with better efficiency since the parsing tree is pre-computed during init instead of being re-evaluated while iterating through the component tree.
- Since:
- Dec 7, 2016
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected class
protected class
protected class
protected class
protected class
protected class
protected class
protected class
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
FieldsModifier and TypeFieldDescriptionprotected char[]
protected int
protected boolean
protected Map<String,
TextDataParser.IntegerParser> protected String[]
protected Reader
protected StringBuilder
protected int
protected String
Fields inherited from class org.vast.swe.fast.AbstractDataParser
INVALID_ARRAY_SIZE_MSG, INVALID_BOOLEAN_MSG, INVALID_CHOICE_MSG, INVALID_DECIMAL_MSG, INVALID_INTEGER_MSG
Fields inherited from class org.vast.swe.fast.DataBlockProcessor
dataComponents, enableSubTree, filter, hasVarSizeArray, processorStack, processorTreeReady, rootProcessor
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
close()
protected DataBlockProcessor.ArrayProcessor
getArrayProcessor
(DataArray array) protected DataBlockProcessor.ArraySizeSupplier
getArraySizeSupplier
(String refId) protected DataBlockProcessor.ChoiceProcessor
getChoiceProcessor
(DataChoice choice) protected DataBlockProcessor.ImplicitSizeProcessor
protected void
init()
protected boolean
moreData()
void
setInput
(InputStream is) void
void
void
void
void
void
Methods inherited from class org.vast.swe.fast.AbstractDataParser
getDataEncoding, getDataHandler, getErrorHandler, getNextDataBlock, getRawDataHandler, parse, parse, parse, parseNextBlock, reset, setDataEncoding, setDataHandler, setErrorHandler, setParentArray, setRawDataHandler, setRenewDataBlock, stop, updateArraySize
Methods inherited from class org.vast.swe.fast.DataBlockProcessor
addToProcessorTree, checkEnabled, getDataComponents, getRangeProcessor, getRecordProcessor, getVectorProcessor, setDataComponentFilter, setDataComponents, setEnabled, visit, 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.DataStreamParser
getDataComponents, setDataComponents
-
Field Details
-
reader
-
tokenSep
-
blockSep
protected char[] blockSep -
collapseWhiteSpaces
protected boolean collapseWhiteSpaces -
tokenBuf
-
lastSplit
-
tokenIndex
protected int tokenIndex -
blockSepIndex
protected int blockSepIndex -
countReaders
-
-
Constructor Details
-
TextDataParser
public TextDataParser()
-
-
Method Details
-
init
protected void init()- Specified by:
init
in classDataBlockProcessor
-
moreData
- Specified by:
moreData
in classAbstractDataParser
- Throws:
IOException
-
setInput
- Throws:
IOException
-
close
- Throws:
IOException
-
visit
-
visit
-
visit
-
visit
-
visit
-
visit
-
getChoiceProcessor
- Specified by:
getChoiceProcessor
in classDataBlockProcessor
-
getArrayProcessor
- Overrides:
getArrayProcessor
in classDataBlockProcessor
-
getImplicitSizeProcessor
- Specified by:
getImplicitSizeProcessor
in classDataBlockProcessor
-
getArraySizeSupplier
- Specified by:
getArraySizeSupplier
in classDataBlockProcessor
-