Class BindyKeyValuePairFactory

  • All Implemented Interfaces:
    BindyFactory

    public class BindyKeyValuePairFactory
    extends BindyAbstractFactory
    implements BindyFactory
    The BindyKeyValuePairFactory is the class who allows to bind data of type key value pair. Such format exist in financial messages FIX. This class allows to generate a model associated to message, bind data from a message to the POJOs, export data of POJOs to a message and format data into String, Date, Double, ... according to the format/pattern defined
    • Constructor Detail

    • Method Detail

      • initKeyValuePairModel

        public void initKeyValuePairModel()
        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. Next, we retrieve the parameters required like : Pair Separator & key value pair separator
        Throws:
        Exception
      • 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
      • getPairSeparator

        public String getPairSeparator()
        Find the pair separator used to delimit the key value pair fields
      • getKeyValuePairSeparator

        public String getKeyValuePairSeparator()
        Find the key value pair separator used to link the key with its value
      • isMessageOrdered

        public boolean isMessageOrdered()
        Flag indicating if the message must be ordered
        Returns:
        boolean