Class BooleanConversion

  • All Implemented Interfaces:
    Conversion<java.lang.String,​java.lang.Boolean>

    public class BooleanConversion
    extends ObjectConversion<java.lang.Boolean>
    Converts Strings to Booleans and vice versa

    This class supports multiple representations of boolean values. For example, you can define conversions from different Strings such as "Yes, Y, 1" to true, and "No, N, 0" to false.

    The reverse conversion from a Boolean to String (in revert(Boolean) will return the first String provided in this class constructor

    Using the previous example, a call to revert(true) will produce "Yes" and a call revert(false) will produce "No".

    Author:
    Univocity Software Pty Ltd - parsers@univocity.com
    • Constructor Detail

      • BooleanConversion

        public BooleanConversion​(java.lang.String[] valuesForTrue,
                                 java.lang.String[] valuesForFalse)
        Creates conversions from String to Boolean. This default constructor assumes the output of a conversion should be null when input is null

        The list of Strings that identify "true" the list of Strings that identify "false" are mandatory.

        Parameters:
        valuesForTrue - Strings that identify the boolean value true. The first element will be returned when executing revert(true)
        valuesForFalse - Strings that identify the boolean value false. The first element will be returned when executing #revert(false)
      • BooleanConversion

        public BooleanConversion​(java.lang.Boolean valueIfStringIsNull,
                                 java.lang.String valueIfObjectIsNull,
                                 java.lang.String[] valuesForTrue,
                                 java.lang.String[] valuesForFalse)
        Creates a Conversion from String to Boolean with default values to return when the input is null.

        The list of Strings that identify "true" the list of Strings that identify "false" are mandatory.

        Parameters:
        valueIfStringIsNull - default Boolean value to be returned when the input String is null. Used when ObjectConversion.execute(String) is invoked.
        valueIfObjectIsNull - default String value to be returned when a Boolean input is null. Used when revert(Boolean) is invoked.
        valuesForTrue - Strings that identify the boolean value true. The first element will be returned when executing revert(true)
        valuesForFalse - Strings that identify the boolean value false. The first element will be returned when executing #revert(false)
    • Method Detail

      • revert

        public java.lang.String revert​(java.lang.Boolean input)
        Converts a Boolean back to a String

        The return value depends on the list of values for true/false provided in the constructor of this class.

        Specified by:
        revert in interface Conversion<java.lang.String,​java.lang.Boolean>
        Overrides:
        revert in class ObjectConversion<java.lang.Boolean>
        Parameters:
        input - the Boolean to be converted to a String
        Returns:
        a String representation for this boolean value, or the value of ObjectConversion.getValueIfObjectIsNull() if the Boolean input is null.
      • fromString

        protected java.lang.Boolean fromString​(java.lang.String input)
        Converts a String to a Boolean
        Specified by:
        fromString in class ObjectConversion<java.lang.Boolean>
        Parameters:
        input - a String to be converted into a Boolean value.
        Returns:
        true if the input String is part of trueValues, false if the input String is part of falseValues, or ObjectConversion.getValueIfStringIsNull() if the input String is null.
      • getBoolean

        public static java.lang.Boolean getBoolean​(java.lang.String booleanString,
                                                   java.lang.String[] trueValues,
                                                   java.lang.String[] falseValues)
        Returns the Boolean value represented by a String, as defined by sets of Strings that represent true and false values.
        Parameters:
        booleanString - the value that represents either true or false
        trueValues - a set of possible string values that represent true. If empty, then "true" will be assumed as the only acceptable representation.
        falseValues - a set of possible string values that represent false. If empty, then "false" will be assumed as the only acceptable representation.
        Returns:
        the boolean value that the input string represents
        Throws:
        DataProcessingException - if the input string does not match any value provided in neither set of possible values.