Package com.clickhouse.client.data
Class ClickHouseTabSeparatedProcessor
- java.lang.Object
-
- com.clickhouse.client.ClickHouseDataProcessor
-
- com.clickhouse.client.data.ClickHouseTabSeparatedProcessor
-
public class ClickHouseTabSeparatedProcessor extends ClickHouseDataProcessor
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classClickHouseTabSeparatedProcessor.MappedFunctions
-
Field Summary
-
Fields inherited from class com.clickhouse.client.ClickHouseDataProcessor
columns, config, currentRecord, DEFAULT_COLUMNS, ERROR_FAILED_TO_READ, ERROR_FAILED_TO_WRITE, ERROR_REACHED_END_OF_STREAM, ERROR_UNKNOWN_DATA_TYPE, input, output, readPosition, records, settings, templates, values
-
-
Constructor Summary
Constructors Constructor Description ClickHouseTabSeparatedProcessor(ClickHouseConfig config, ClickHouseInputStream input, ClickHouseOutputStream output, List<ClickHouseColumn> columns, Map<String,Object> settings)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected ClickHouseRecordcreateRecord()Factory method to create a record.static ClickHouseTabSeparatedProcessor.MappedFunctionsgetMappedFunctions(ClickHouseFormat format)protected com.clickhouse.client.data.ClickHouseTabSeparatedProcessor.TextHandlergetTextHandler()protected voidreadAndFill(ClickHouseRecord r)Reads columns(starting fromreadPosition) from input stream and fill deserialized data into the given record.protected voidreadAndFill(ClickHouseValue value, ClickHouseColumn column)Reads column(atreadPositionfrom input stream and fill deserialized data into the given value object.protected List<ClickHouseColumn>readColumns()Reads columns from input stream.voidwrite(ClickHouseValue value, ClickHouseColumn column)Writes serialized value to output stream.-
Methods inherited from class com.clickhouse.client.ClickHouseDataProcessor
buildAggMappings, buildMappings, getColumns, initRecords, initValues, read, records, values
-
-
-
-
Constructor Detail
-
ClickHouseTabSeparatedProcessor
public ClickHouseTabSeparatedProcessor(ClickHouseConfig config, ClickHouseInputStream input, ClickHouseOutputStream output, List<ClickHouseColumn> columns, Map<String,Object> settings) throws IOException
- Throws:
IOException
-
-
Method Detail
-
getMappedFunctions
public static ClickHouseTabSeparatedProcessor.MappedFunctions getMappedFunctions(ClickHouseFormat format)
-
getTextHandler
protected com.clickhouse.client.data.ClickHouseTabSeparatedProcessor.TextHandler getTextHandler()
-
createRecord
protected ClickHouseRecord createRecord()
Description copied from class:ClickHouseDataProcessorFactory method to create a record.- Specified by:
createRecordin classClickHouseDataProcessor- Returns:
- new record
-
readAndFill
protected void readAndFill(ClickHouseRecord r) throws IOException
Description copied from class:ClickHouseDataProcessorReads columns(starting fromreadPosition) from input stream and fill deserialized data into the given record. This method is only used when iterating throughClickHouseDataProcessor.records().- Overrides:
readAndFillin classClickHouseDataProcessor- Parameters:
r- non-null record to fill- Throws:
IOException- when failed to read columns from input stream
-
readAndFill
protected void readAndFill(ClickHouseValue value, ClickHouseColumn column) throws IOException
Description copied from class:ClickHouseDataProcessorReads column(atreadPositionfrom input stream and fill deserialized data into the given value object. This method is mainly used when iterating throughClickHouseDataProcessor.values(). In default implementation, it's also used inClickHouseDataProcessor.readAndFill(ClickHouseRecord)for simplicity.- Specified by:
readAndFillin classClickHouseDataProcessor- Parameters:
value- non-null value object to fillcolumn- non-null type of the value- Throws:
IOException- when failed to read column from input stream
-
readColumns
protected List<ClickHouseColumn> readColumns() throws IOException
Description copied from class:ClickHouseDataProcessorReads columns from input stream. Usually this will be only called once during instantiation.- Specified by:
readColumnsin classClickHouseDataProcessor- Returns:
- non-null list of columns
- Throws:
IOException- when failed to read columns from input stream
-
write
public void write(ClickHouseValue value, ClickHouseColumn column) throws IOException
Description copied from class:ClickHouseDataProcessorWrites serialized value to output stream.- Specified by:
writein classClickHouseDataProcessor- Parameters:
value- non-null value to be serializedcolumn- non-null type information- Throws:
IOException- when failed to write data to output stream
-
-