Class CsvParserPipe

All Implemented Interfaces:
HasTransactionAttribute, IConfigurable, IConfigurationAware, IForwardTarget, INamedObject, IPipe, IScopeProvider, IWithParameters, EventThrowing, HasStatistics, org.springframework.beans.factory.Aware, org.springframework.context.ApplicationContextAware

@EnterpriseIntegrationPattern(TRANSLATOR) public class CsvParserPipe extends FixedForwardPipe
Reads a message in CSV format, and turns it into XML.
Author:
Gerrit van Brakel
  • Constructor Details

    • CsvParserPipe

      public CsvParserPipe()
  • Method Details

    • configure

      public void configure() throws ConfigurationException
      Description copied from class: FixedForwardPipe
      checks for correct configuration of forward
      Specified by:
      configure in interface IConfigurable
      Specified by:
      configure in interface IPipe
      Overrides:
      configure in class FixedForwardPipe
      Throws:
      ConfigurationException
    • doPipe

      public PipeRunResult doPipe(Message message, PipeLineSession session) throws PipeRunException
      Description copied from interface: IPipe
      This is where the action takes place. Pipes may only throw a PipeRunException, to be handled by the caller of this object. Implementations must either consume the message, or pass it on to the next Pipe in the PipeRunResult. If the result of the Pipe does not depend on the input, like for the FixedResultPipe, the Pipe can schedule the input to be closed at session exit, by calling Message.closeOnCloseOf(PipeLineSession, String) This allows the previous Pipe to release any resources (e.g. connections) that it might have kept open until the message was consumed. Doing so avoids connections leaking from pools, while it enables efficient streaming processing of data while it is being read from a stream.
      Throws:
      PipeRunException
    • setFileContainsHeader

      public void setFileContainsHeader(Boolean fileContainsHeader)
      Specifies if the first line should be treated as header or as data
      Default value
      true
    • setFieldNames

      public void setFieldNames(String fieldNames)
      Comma separated list of header names. If set, then fileContainsHeader defaults to false. If not set, headers are taken from the first line
    • setFieldSeparator

      public void setFieldSeparator(String fieldSeparator)
      Character that separates fields
      Default value
      ,
    • setHeaderCase

      public void setHeaderCase(CsvParserPipe.HeaderCase headerCase)
      When set, character casing will be changed for the header
    • setPrettyPrint

      public void setPrettyPrint(boolean prettyPrint)
      Format the XML output in easy legible way
    • setUseControlCodes

      public void setUseControlCodes(boolean useControlCodes)
      Enables the ASCII (RS) Record Separator and (US) Unit Separator Control Code field delimiters. May not be used in combination with attribute fieldSeparator. See WIKI Control Codes.
    • getFileContainsHeader

      public Boolean getFileContainsHeader()
    • getFieldNames

      public String getFieldNames()
    • getFieldSeparator

      public String getFieldSeparator()
    • getHeaderCase

      public CsvParserPipe.HeaderCase getHeaderCase()
    • isPrettyPrint

      public boolean isPrettyPrint()