Class JsonRecordPipelineOutput
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.PipelineOutput
com.northconcepts.datapipeline.foundations.pipeline.output.FileSinkPipelineOutput
com.northconcepts.datapipeline.foundations.pipeline.output.JsonRecordPipelineOutput
- All Implemented Interfaces:
DataExceptionContributor,JsonSerializable,RecordSerializable,XmlSerializable,DataWriterFactory,JavaCodeGenerator,Serializable
Writes a pipeline's records to a JSON
FileSink using a JsonRecordWriter, one object per record.- 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 TypeMethodDescriptionfromRecord(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.voidgenerateSaveCode(JavaCodeBuilder javaCodeBuilder) Writes the generated code that saves the output afterJob.run(reader, writer); does nothing by default.Returns the character set used to write the file (defaults to UTF-8); blank uses the platform default.getName()Returns a display name for this output, such as the destination's name followed by its format.Returns the name of the top-level field holding the records array or blank to write a bare array (defaults todata).booleanIndicates if the file's stream is closed when the writer is closed (defaults to true).booleanIndicates if the output is flushed after each record (defaults to false).booleanisPretty()Indicates if line breaks and indentation are added to the output (defaults to false).setAutoCloseWriter(boolean autoCloseWriter) Indicates if the file's stream is closed when the writer is closed (defaults to true).setCharset(String charset) Sets the character set used to write the file (defaults to UTF-8); blank uses the platform default.setFileSink(FileSink fileSink) setFlushOnWrite(boolean flushOnWrite) Indicates if the output is flushed after each record (defaults to false).setPretty(boolean pretty) Indicates if line breaks and indentation are added to the output (defaults to false).setRootFieldName(String rootFieldName) Sets the name of the top-level field holding the records array or blank to write a bare array (defaults todata).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.PipelineOutput
getNestedPipelineOutput, getPipelineOutput, getRootPipelineOutputMethods 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
-
JsonRecordPipelineOutput
public JsonRecordPipelineOutput()
-
-
Method Details
-
createDataWriter
-
getFileSink
- Specified by:
getFileSinkin classFileSinkPipelineOutput
-
setFileSink
- Specified by:
setFileSinkin classFileSinkPipelineOutput
-
getName
Description copied from class:PipelineOutputReturns a display name for this output, such as the destination's name followed by its format.- Overrides:
getNamein classFileSinkPipelineOutput
-
getRootFieldName
Returns the name of the top-level field holding the records array or blank to write a bare array (defaults todata). -
setRootFieldName
Sets the name of the top-level field holding the records array or blank to write a bare array (defaults todata). -
isPretty
public boolean isPretty()Indicates if line breaks and indentation are added to the output (defaults to false). -
setPretty
Indicates if line breaks and indentation are added to the output (defaults to false). -
getCharset
Returns the character set used to write the file (defaults to UTF-8); blank uses the platform default. -
setCharset
Sets the character set used to write the file (defaults to UTF-8); blank uses the platform default. -
isAutoCloseWriter
public boolean isAutoCloseWriter()Indicates if the file's stream is closed when the writer is closed (defaults to true). -
setAutoCloseWriter
Indicates if the file's stream is closed when the writer is closed (defaults to true). -
isFlushOnWrite
public boolean isFlushOnWrite()Indicates if the output is flushed after each record (defaults to false). -
setFlushOnWrite
Indicates if the output is flushed after each record (defaults to false). -
generateSaveCode
Description copied from class:FileSinkPipelineOutputWrites the generated code that saves the output afterJob.run(reader, writer); does nothing by default.- Overrides:
generateSaveCodein classFileSinkPipelineOutput
-
generateJavaCode
Description copied from interface:JavaCodeGeneratorAppends Java source code representing this object to the given builder. -
toRecord
Description copied from interface:RecordSerializableConverts this object's state to a record thatRecordSerializable.fromRecord(Record)can load.- Specified by:
toRecordin interfaceRecordSerializable- Overrides:
toRecordin classBean
-
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 classPipelineOutput- 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 classPipelineOutput
-
fromXmlElement
-