Class FixedWidthPipelineInput
java.lang.Object
com.northconcepts.datapipeline.foundations.core.Bean
com.northconcepts.datapipeline.foundations.core.FoundationObject
com.northconcepts.datapipeline.foundations.pipeline.PipelineObject
com.northconcepts.datapipeline.foundations.pipeline.PipelineInput
com.northconcepts.datapipeline.foundations.pipeline.input.FileSourcePipelineInput
com.northconcepts.datapipeline.foundations.pipeline.input.FixedWidthPipelineInput
- All Implemented Interfaces:
DataExceptionContributor,JsonSerializable,RecordSerializable,XmlSerializable,DataReaderFactory,JavaCodeGenerator,Serializable
Reads a pipeline's source data from a fixed-width text
FileSource using a FixedWidthReader.- See Also:
-
Field Summary
Fields inherited from class com.northconcepts.datapipeline.foundations.core.FoundationObject
internalId, internalName, log, TIMESTAMP_FORMATFields inherited from interface com.northconcepts.datapipeline.core.RecordSerializable
SERIALIZED_CLASS_NAME, TYPEFields inherited from interface com.northconcepts.datapipeline.core.XmlSerializable
XML_SERIALIZED_CLASS_NAME -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddField(FixedWidthField field) Appends a left-aligned column that uses the input's fill character.addField(String name, int width, FixedWidthAlign align, Character fillChar) Appends a column with its own alignment and fill character; a null fill character uses the input's.addFields(int... width) Appends unnamed, left-aligned columns of the given widths that use the input's fill character.fromRecord(Record source) Loads this instance's state from a record and returnsthis(for fluid API call chaining).fromXmlElement(Element pipelineInputElement) voidAppends Java source code representing this object to the given builder.Returns the character set used to read the file (defaults to UTF-8); blank uses the platform default.charReturns the character trimmed from values in columns without their own fill character (defaults to space).getName()Returns a display name for this input, such as the source's name followed by its format.booleanIndicates if the first row holds the field names (defaults to false).booleanIndicates if the last field takes the rest of each line regardless of its width (defaults to false).booleanIndicates if this input can save data lineage on the records it reads (false unless a subclass overrides it).booleanIndicates if rows with only null values are skipped (defaults to false).setCharset(String charset) Sets the character set used to read the file (defaults to UTF-8); blank uses the platform default.setFieldNamesInFirstRow(boolean fieldNamesInFirstRow) Indicates if the first row holds the field names (defaults to false).setFields(List<FixedWidthField> fields) setFileSource(FileSource fileSource) setFillChar(char fillChar) Sets the character trimmed from values in columns without their own fill character (defaults to space).setLastFieldConsumesRemaining(boolean lastFieldConsumesRemaining) Indicates if the last field takes the rest of each line regardless of its width (defaults to false).setSkipEmptyRows(boolean skipEmptyRows) Indicates if rows with only null values are skipped (defaults to false).skipField(int width) Appends a column of the given width whose text is discarded instead of read into a field.toRecord()Converts this object's state to a record thatRecordSerializable.fromRecord(Record)can load.toXmlElement(Document document) Returns an element, created withdocument, describing this object; the default implementation throws aDataException.Methods inherited from class com.northconcepts.datapipeline.foundations.pipeline.PipelineInput
getNestedPipelineInput, getPipelineInput, getRootPipelineInput, isSaveLineage, setSaveLineageMethods inherited from class com.northconcepts.datapipeline.foundations.core.FoundationObject
addExceptionProperties, assertValid, assertValid, clone, exception, exception, exception, getInternalId, getInternalName, resetInternalIdMethods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface com.northconcepts.datapipeline.core.DataExceptionContributor
addExceptionProperties
-
Constructor Details
-
FixedWidthPipelineInput
public FixedWidthPipelineInput()
-
-
Method Details
-
getName
Description copied from class:PipelineInputReturns a display name for this input, such as the source's name followed by its format.- Overrides:
getNamein classFileSourcePipelineInput
-
getFileSource
- Specified by:
getFileSourcein classFileSourcePipelineInput
-
setFileSource
- Specified by:
setFileSourcein classFileSourcePipelineInput
-
getFields
-
setFields
-
addField
-
addFields
Appends unnamed, left-aligned columns of the given widths that use the input's fill character. -
addField
Appends a left-aligned column that uses the input's fill character. -
addField
public FixedWidthPipelineInput addField(String name, int width, FixedWidthAlign align, Character fillChar) Appends a column with its own alignment and fill character; a null fill character uses the input's. -
skipField
Appends a column of the given width whose text is discarded instead of read into a field. -
getFillChar
public char getFillChar()Returns the character trimmed from values in columns without their own fill character (defaults to space). -
setFillChar
Sets the character trimmed from values in columns without their own fill character (defaults to space). -
isLastFieldConsumesRemaining
public boolean isLastFieldConsumesRemaining()Indicates if the last field takes the rest of each line regardless of its width (defaults to false). -
setLastFieldConsumesRemaining
Indicates if the last field takes the rest of each line regardless of its width (defaults to false). -
isSkipEmptyRows
public boolean isSkipEmptyRows()Indicates if rows with only null values are skipped (defaults to false). -
setSkipEmptyRows
Indicates if rows with only null values are skipped (defaults to false). -
isFieldNamesInFirstRow
public boolean isFieldNamesInFirstRow()Indicates if the first row holds the field names (defaults to false). -
setFieldNamesInFirstRow
Indicates if the first row holds the field names (defaults to false). -
createDataReader
-
generateJavaCode
Description copied from interface:JavaCodeGeneratorAppends Java source code representing this object to the given builder. -
getCharset
Returns the character set used to read the file (defaults to UTF-8); blank uses the platform default. -
setCharset
Sets the character set used to read the file (defaults to UTF-8); blank uses the platform default. -
isLineageSupported
public boolean isLineageSupported()Description copied from class:PipelineInputIndicates if this input can save data lineage on the records it reads (false unless a subclass overrides it).- Overrides:
isLineageSupportedin classPipelineInput
-
toRecord
Description copied from interface:RecordSerializableConverts this object's state to a record thatRecordSerializable.fromRecord(Record)can load.- Specified by:
toRecordin interfaceRecordSerializable- Overrides:
toRecordin classPipelineInput
-
fromRecord
Description copied from interface:RecordSerializableLoads this instance's state from a record and returnsthis(for fluid API call chaining). For fluid API call chaining, the overridden method should change the declared return type to its class.- Specified by:
fromRecordin interfaceRecordSerializable- Overrides:
fromRecordin classPipelineInput- Parameters:
source-- Returns:
- this instance.
-
toXmlElement
Description copied from interface:XmlSerializableReturns an element, created withdocument, describing this object; the default implementation throws aDataException.- Specified by:
toXmlElementin interfaceXmlSerializable- Overrides:
toXmlElementin classPipelineInput
-
fromXmlElement
- Specified by:
fromXmlElementin interfaceXmlSerializable- Overrides:
fromXmlElementin classPipelineInput
-