Package org.apache.beam.sdk.io.csv
Class CsvIOParse<T>
java.lang.Object
org.apache.beam.sdk.transforms.PTransform<PCollection<String>,CsvIOParseResult<T>>
org.apache.beam.sdk.io.csv.CsvIOParse<T>
- All Implemented Interfaces:
Serializable,HasDisplayData
PTransform for Parsing CSV Record Strings into Schema-mapped target types. CsvIOParse is not instantiated directly but via CsvIO.parse(java.lang.Class<T>, org.apache.commons.csv.CSVFormat) or CsvIO.parseRows(org.apache.beam.sdk.schemas.Schema, org.apache.commons.csv.CSVFormat).- See Also:
-
Field Summary
Fields inherited from class org.apache.beam.sdk.transforms.PTransform
annotations, displayData, name, resourceHints -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionexpand(PCollection<String> input) Override this method to specify how thisPTransformshould be expanded on the givenInputT.<OutputT extends @NonNull Object>
CsvIOParse<T> withCustomRecordParsing(String fieldName, SerializableFunction<String, OutputT> customRecordParsingFn) Configures custom cell parsing.Methods inherited from class org.apache.beam.sdk.transforms.PTransform
addAnnotation, compose, compose, getAdditionalInputs, getAnnotations, getDefaultOutputCoder, getDefaultOutputCoder, getDefaultOutputCoder, getKindString, getName, getResourceHints, populateDisplayData, setDisplayData, setResourceHints, toString, validate, validate
-
Constructor Details
-
CsvIOParse
public CsvIOParse()
-
-
Method Details
-
withCustomRecordParsing
public <OutputT extends @NonNull Object> CsvIOParse<T> withCustomRecordParsing(String fieldName, SerializableFunction<String, OutputT> customRecordParsingFn) Configures custom cell parsing.Example
CsvIO.parse().withCustomRecordParsing("listOfInts", cell-> { List<Integer> result = new ArrayList<>(); for (String stringValue: Splitter.on(";").split(cell)) { result.add(Integer.parseInt(stringValue)); } }); -
expand
Description copied from class:PTransformOverride this method to specify how thisPTransformshould be expanded on the givenInputT.NOTE: This method should not be called directly. Instead apply the
PTransformshould be applied to theInputTusing theapplymethod.Composite transforms, which are defined in terms of other transforms, should return the output of one of the composed transforms. Non-composite transforms, which do not apply any transforms internally, should return a new unbound output and register evaluators (via backend-specific registration methods).
- Specified by:
expandin classPTransform<PCollection<String>,CsvIOParseResult<T>>
-