Class BindyFixedLengthFactory

  • All Implemented Interfaces:
    BindyFactory

    public class BindyFixedLengthFactory
    extends BindyAbstractFactory
    implements BindyFactory
    The BindyFixedLengthFactory is the class who allows to : Generate a model associated to a fixed length record, bind data from a record to the POJOs, export data of POJOs to a fixed length record and format data into String, Date, Double, ... according to the format/pattern defined
    • Constructor Detail

    • Method Detail

      • initFixedLengthModel

        public void initFixedLengthModel()
        method uses to initialize the model representing the classes who will bind the data. This process will scan for classes according to the package name provided, check the annotated classes and fields
      • bind

        public void bind​(org.apache.camel.CamelContext camelContext,
                         List<String> data,
                         Map<String,​Object> model,
                         int line)
                  throws Exception
        Description copied from interface: BindyFactory
        The bind allow to read the content of a record (expressed as a List) and map it to the model classes.
        Specified by:
        bind in interface BindyFactory
        Specified by:
        bind in class BindyAbstractFactory
        data - List represents the csv, ... data to transform
        model - Map is a collection of objects used to bind data. String is the key name of the class link to POJO objects
        line - is the position of the record into the file
        Throws:
        Exception - can be thrown
      • unbind

        public String unbind​(org.apache.camel.CamelContext camelContext,
                             Map<String,​Object> model)
                      throws Exception
        Description copied from interface: BindyFactory
        The unbind is used to transform the content of the classes model objects into a string. The string represents a record of a CSV file
        Specified by:
        unbind in interface BindyFactory
        Specified by:
        unbind in class BindyAbstractFactory
        model - Map is a collection of objects used to create csv, ... records. String is the key name of the class link to POJO objects
        Returns:
        String represents a csv record created
        Throws:
        Exception - can be thrown
      • header

        public Class<?> header()
        Gets the type of the header record.
        Returns:
        The type of the header record if any, otherwise void.class.
      • hasHeader

        public boolean hasHeader()
        Flag indicating if we have a header
      • footer

        public Class<?> footer()
        Gets the type of the footer record.
        Returns:
        The type of the footer record if any, otherwise void.class.
      • hasFooter

        public boolean hasFooter()
        Flag indicating if we have a footer
      • skipHeader

        public boolean skipHeader()
        Flag indicating whether to skip the header parsing
      • skipFooter

        public boolean skipFooter()
        Flag indicating whether to skip the footer processing
      • isHeader

        public boolean isHeader()
        Flag indicating whether this factory is for a header
      • isFooter

        public boolean isFooter()
        Flag indicating whether this factory is for a footer
      • paddingchar

        public char paddingchar()
        Padding char used to fill the field
      • recordLength

        public int recordLength()
        Expected fixed length of the record
      • isIgnoreTrailingChars

        public boolean isIgnoreTrailingChars()
        Flag indicating whether trailing characters beyond the last declared field may be ignored
      • isIgnoreMissingChars

        public boolean isIgnoreMissingChars()
        Flag indicating whether too short lines are ignored
      • isCountGrapheme

        public boolean isCountGrapheme()
        Flag indicating whether graphemes or codepoints are counted.