Class CustomSetterSinkDataProcessorImpl
- All Implemented Interfaces:
CustomSetterSinkDataProcessor
CustomSetterSinkDataProcessor.
An instance of this class is created when a CustomSetter is found in the schema and set on all the ColumnSinks-
Method Summary
Modifier and TypeMethodDescriptiongetAllColumnDataMap(String columnName) The method is invoked from CustomSetterSinks to get the processed data The control will wait until all data is processed<DATA_TYPE>
voidThe publish method that allows ColumnSinks to publish their non-primitive datavoidpublishBooleans(String columnName, Boolean[] values, int length) The publish method that allows ColumnSinks that are handling Boolean data type to publish datavoidpublishBytes(String columnName, byte[] values, boolean[] isNull, int length) The publish method that allows ColumnSinks that are handling byte data type to publish datavoidpublishChars(String columnName, char[] values, boolean[] isNull, int length) The publish method that allows ColumnSinks that are handling char data type to publish datavoidpublishDoubles(String columnName, double[] values, boolean[] isNull, int length) The publish method that allows ColumnSinks that are handling double data type to publish datavoidpublishFloats(String columnName, float[] values, boolean[] isNull, int length) The publish method that allows ColumnSinks that are handling float data type to publish datavoidpublishInts(String columnName, int[] values, boolean[] isNull, int length) The publish method that allows ColumnSinks that are handling int data type to publish datavoidpublishLongs(String columnName, long[] values, boolean[] isNull, int length) The publish method that allows ColumnSinks that are handling long data type to publish datavoidpublishShorts(String columnName, short[] values, boolean[] isNull, int length) The publish method that allows ColumnSinks that are handling short data type to publish dataintshutdown()Expected to be invoked when the import is complete or terminated, necessary cleanup should be done
-
Method Details
-
shutdown
public int shutdown()Description copied from interface:CustomSetterSinkDataProcessorExpected to be invoked when the import is complete or terminated, necessary cleanup should be done- Specified by:
shutdownin interfaceCustomSetterSinkDataProcessor- Returns:
- The count of columns that have not been processed yet in the event this is a forced termination
-
getAllColumnDataMap
Description copied from interface:CustomSetterSinkDataProcessorThe method is invoked from CustomSetterSinks to get the processed data The control will wait until all data is processed- Specified by:
getAllColumnDataMapin interfaceCustomSetterSinkDataProcessor- Parameters:
columnName- The invoking custom-setter column name- Returns:
- Map of column name to data for that column represented as an array of (potentially boxed) Objects.
-
publishBytes
public void publishBytes(@NotNull String columnName, @NotNull byte[] values, boolean[] isNull, int length) Description copied from interface:CustomSetterSinkDataProcessorThe publish method that allows ColumnSinks that are handling byte data type to publish dataThe column name will be used to associate the data as well as used to confirm that column data has been received
- Specified by:
publishBytesin interfaceCustomSetterSinkDataProcessor- Parameters:
columnName- The column name publishing the datavalues- The values for the column in this chunkisNull- A boolean array, with the same range of valid elements. A "true" value at positionimeans thatsrc[i]should be ignored and the element should be considered as the "null value".length- The length of the values in the chunk
-
publishBooleans
Description copied from interface:CustomSetterSinkDataProcessorThe publish method that allows ColumnSinks that are handling Boolean data type to publish dataThe column name will be used to associate the data as well as used to confirm that column data has been received
- Specified by:
publishBooleansin interfaceCustomSetterSinkDataProcessor- Parameters:
columnName- The column name publishing the datavalues- The values for the column in this chunklength- The length of the values in the chunk
-
publishChars
public void publishChars(@NotNull String columnName, @NotNull char[] values, boolean[] isNull, int length) Description copied from interface:CustomSetterSinkDataProcessorThe publish method that allows ColumnSinks that are handling char data type to publish dataThe column name will be used to associate the data as well as used to confirm that column data has been received
- Specified by:
publishCharsin interfaceCustomSetterSinkDataProcessor- Parameters:
columnName- The column name publishing the datavalues- The values for the column in this chunkisNull- A boolean array, with the same range of valid elements. A "true" value at positionimeans thatsrc[i]should be ignored and the element should be considered as the "null value".length- The length of the values in the chunk
-
publishDoubles
public void publishDoubles(@NotNull String columnName, @NotNull double[] values, boolean[] isNull, int length) Description copied from interface:CustomSetterSinkDataProcessorThe publish method that allows ColumnSinks that are handling double data type to publish dataThe column name will be used to associate the data as well as used to confirm that column data has been received
- Specified by:
publishDoublesin interfaceCustomSetterSinkDataProcessor- Parameters:
columnName- The column name publishing the datavalues- The values for the column in this chunkisNull- A boolean array, with the same range of valid elements. A "true" value at positionimeans thatsrc[i]should be ignored and the element should be considered as the "null value".length- The length of the values in the chunk
-
publishFloats
public void publishFloats(@NotNull String columnName, @NotNull float[] values, boolean[] isNull, int length) Description copied from interface:CustomSetterSinkDataProcessorThe publish method that allows ColumnSinks that are handling float data type to publish dataThe column name will be used to associate the data as well as used to confirm that column data has been received
- Specified by:
publishFloatsin interfaceCustomSetterSinkDataProcessor- Parameters:
columnName- The column name publishing the datavalues- The values for the column in this chunkisNull- A boolean array, with the same range of valid elements. A "true" value at positionimeans thatsrc[i]should be ignored and the element should be considered as the "null value".length- The length of the values in the chunk
-
publishInts
public void publishInts(@NotNull String columnName, @NotNull int[] values, boolean[] isNull, int length) Description copied from interface:CustomSetterSinkDataProcessorThe publish method that allows ColumnSinks that are handling int data type to publish dataThe column name will be used to associate the data as well as used to confirm that column data has been received
- Specified by:
publishIntsin interfaceCustomSetterSinkDataProcessor- Parameters:
columnName- The column name publishing the datavalues- The values for the column in this chunkisNull- A boolean array, with the same range of valid elements. A "true" value at positionimeans thatsrc[i]should be ignored and the element should be considered as the "null value".length- The length of the values in the chunk
-
publishLongs
public void publishLongs(@NotNull String columnName, @NotNull long[] values, boolean[] isNull, int length) Description copied from interface:CustomSetterSinkDataProcessorThe publish method that allows ColumnSinks that are handling long data type to publish dataThe column name will be used to associate the data as well as used to confirm that column data has been received
- Specified by:
publishLongsin interfaceCustomSetterSinkDataProcessor- Parameters:
columnName- The column name publishing the datavalues- The values for the column in this chunkisNull- A boolean array, with the same range of valid elements. A "true" value at positionimeans thatsrc[i]should be ignored and the element should be considered as the "null value".length- The length of the values in the chunk
-
publishShorts
public void publishShorts(@NotNull String columnName, @NotNull short[] values, boolean[] isNull, int length) Description copied from interface:CustomSetterSinkDataProcessorThe publish method that allows ColumnSinks that are handling short data type to publish dataThe column name will be used to associate the data as well as used to confirm that column data has been received
- Specified by:
publishShortsin interfaceCustomSetterSinkDataProcessor- Parameters:
columnName- The column name publishing the datavalues- The values for the column in this chunkisNull- A boolean array, with the same range of valid elements. A "true" value at positionimeans thatsrc[i]should be ignored and the element should be considered as the "null value".length- The length of the values in the chunk
-
publish
public <DATA_TYPE> void publish(@NotNull String columnName, @NotNull DATA_TYPE[] values, int length, Class<DATA_TYPE> dataType) Description copied from interface:CustomSetterSinkDataProcessorThe publish method that allows ColumnSinks to publish their non-primitive dataThe column name will be used to associate the data as well as used to confirm that column data has been received
- Specified by:
publishin interfaceCustomSetterSinkDataProcessor- Type Parameters:
DATA_TYPE- This is the type of data for the column publishing the data- Parameters:
columnName- The column name publishing the datavalues- The values for the column in this chunklength- The length of the values in the chunkdataType- The data type of the data
-