Class BooleanValue

java.lang.Object
com.aquima.interactions.foundation.types.AbstractValue
com.aquima.interactions.foundation.types.BooleanValue
All Implemented Interfaces:
IConvertable, IPrimitiveValue, ISingleValue, IValue, Serializable, Comparable<Object>
Direct Known Subclasses:
AttributeBooleanValue

public class BooleanValue extends AbstractValue
This class does not extend the AbstractValue class, as the auto-conversion methods to ranges and lists are useless (and even unwanted) for the boolean type.
Since:
5.0
Author:
O. Kerpershoek
See Also:
  • Field Details

    • TRUE

      public static final BooleanValue TRUE
      This member defines the TRUE value for the boolean type.
    • FALSE

      public static final BooleanValue FALSE
      This member defines the FALSE value for the boolean type.
    • UNKNOWN

      public static final BooleanValue UNKNOWN
      This member defines the UNKNOWN value for the boolean type.
  • Constructor Details

    • BooleanValue

      protected BooleanValue()
      Constructs an unknown boolean value. This constructor is for internal use only, and the preferred method of acquiring an unknown boolean is by using the predefined static UNKNOWN member.
    • BooleanValue

      public BooleanValue(boolean booleanValue)
      Constructs a boolean value from a boolean primitive.
      Parameters:
      booleanValue - The boolean primitive that should be used as value.
    • BooleanValue

      public BooleanValue(IMultilingualText displayValue, boolean booleanValue)
      Constructs a boolean value with a display text.
      Parameters:
      displayValue - The display text that should be used for the value.
      booleanValue - The boolean primitive value for this value.
    • BooleanValue

      public BooleanValue(String typeName, IMultilingualText displayValue, boolean booleanValue)
      Constructs a boolean value with a type name and display text.
      Parameters:
      typeName - The type name (domain) for the value.
      displayValue - The display text that should be used for the value.
      booleanValue - The boolean primitive value for this value.
    • BooleanValue

      public BooleanValue(BooleanValue other)
      Copy constructor.
      Parameters:
      other - value to copy.
  • Method Details

    • valueOf

      public static BooleanValue valueOf(boolean booleanValue)
      This method constructs a BooleanValue for the boolean passed as argument.
      Parameters:
      booleanValue - The boolean for which a BooleanValue is requested.
      Returns:
      A BooleanValue for the boolean.
    • valueOf

      public static BooleanValue valueOf(Object obj)
      This method attempts to convert the object to a BooleanValue. An empty string or null value will be converted to UNKNOWN. An integer value of one or zero will be converted to TRUE or FALSE. A string containing 'true' or 'yes' will be converted to TRUE. A string containing 'false' or 'no' will be converted to FALSE. A boolean will be converted to the corresponding BooleanValue.
      Parameters:
      obj - The object that should be converted to a boolean value.
      Returns:
      The BooleanValue for the object.
      Throws:
      ConversionException - This exception is thrown when the object could not be converted to a BooleanValue.
    • parseBoolean

      public static boolean parseBoolean(Object obj)
      This method will convert the passed object to a primitive boolean. If the argument is null or cannot be converted to a boolean, a ConversionException is thrown.
      Parameters:
      obj - The object that should be converted to a boolean.
      Returns:
      boolean value of the object.
    • contains

      public boolean contains(Object objValue)
      Description copied from interface: IValue
      This method returns a boolean indicating if the object passed to this method is entirely part of this value. This method will thus also return true when the object passed is equal to this value, but the method will return false when only part (or none) of the object is represented by this value. Note that for value types that are singular in nature (for instance, implementations of ISingleValue) the operation of this method is limited to an equality check.
      Specified by:
      contains in interface IValue
      Specified by:
      contains in class AbstractValue
      Parameters:
      objValue - Object for which should be checked if it is entirely part of this value.
      Returns:
      boolean indicating if the object passed is entirely part of this value.
    • getDataType

      public DataType getDataType()
      Description copied from interface: IValue
      This method returns the data type of the value.
      Specified by:
      getDataType in interface IValue
      Specified by:
      getDataType in class AbstractValue
      Returns:
      The data type of the value.
    • forType

      public IPrimitiveValue forType(String typeName, IMultilingualText displayValue)
      Description copied from interface: IPrimitiveValue
      This method adds the type and display information to the value, and returns the value with this added information. The method will not change the state of the value the method is invoked on, but it will return a copy of the current value with the added information.
      Specified by:
      forType in interface IPrimitiveValue
      Specified by:
      forType in class AbstractValue
      Parameters:
      typeName - The type of the value.
      displayValue - Multilingual text containing display values.
      Returns:
      The value with the added information.
    • isUnknown

      public boolean isUnknown()
      Description copied from interface: IValue
      This method returns a boolean indicating if the value is unknown.
      Specified by:
      isUnknown in interface IValue
      Specified by:
      isUnknown in class AbstractValue
      Returns:
      boolean indicating if the value is unknown.
    • toSingleValue

      public ISingleValue toSingleValue()
      Description copied from interface: IValue
      This method will attempt to convert the value to a single value. The conversion might fail and raise an exception when the value this method is called on is either a range or a list value. The method isSingleValue can be used to determine if this value can safely be converted to a single value. When the value this method is called on already implements the ISingleValue interface, the implementation may return the same value.
      Specified by:
      toSingleValue in interface IValue
      Overrides:
      toSingleValue in class AbstractValue
      Returns:
      The same value as single value.
    • compareTo

      public int compareTo(Object obj)
      Specified by:
      compareTo in interface Comparable<Object>
      Overrides:
      compareTo in class AbstractValue
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class AbstractValue
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class AbstractValue
    • getValue

      public Object getValue()
      Description copied from interface: IConvertable
      This method returns the internal object of this instance without any conversion.
      Specified by:
      getValue in interface IConvertable
      Specified by:
      getValue in class AbstractValue
      Returns:
      The internal Object of this attribute value.
    • booleanValue

      public boolean booleanValue()
      Description copied from interface: IConvertable
      This method converts the internal value to a boolean primitive.
      Specified by:
      booleanValue in interface IConvertable
      Specified by:
      booleanValue in class AbstractValue
      Returns:
      Boolean primitive of the internal value.
    • dateValue

      public Date dateValue()
      Description copied from interface: IConvertable
      This method converts the internal value to a date object.
      Specified by:
      dateValue in interface IConvertable
      Specified by:
      dateValue in class AbstractValue
      Returns:
      Date object of the internal value.
    • doubleValue

      public double doubleValue()
      Description copied from interface: IConvertable
      This method converts the internal value to a double primitive.
      Specified by:
      doubleValue in interface IConvertable
      Specified by:
      doubleValue in class AbstractValue
      Returns:
      Double primitive of the internal value.
    • integerValue

      public int integerValue()
      Description copied from interface: IConvertable
      This method converts the internal value to an integer primitive.
      Specified by:
      integerValue in interface IConvertable
      Specified by:
      integerValue in class AbstractValue
      Returns:
      Integer primitive of the internal value.
    • longValue

      public long longValue()
      Description copied from interface: IConvertable
      This method converts the internal value to a long primitive.
      Specified by:
      longValue in interface IConvertable
      Specified by:
      longValue in class AbstractValue
      Returns:
      Long primitive of the internal value.
    • stringValue

      public String stringValue()
      Description copied from interface: IConvertable
      This method converts the internal value to a String object.
      Specified by:
      stringValue in interface IConvertable
      Specified by:
      stringValue in class AbstractValue
      Returns:
      String object of the internal value.
    • compareSimple

      protected int compareSimple(Object obj)
      Specified by:
      compareSimple in class AbstractValue
    • duplicate

      public IValue duplicate()
      Description copied from interface: IValue
      This method returns a deep copy of the value.
      Specified by:
      duplicate in interface IValue
      Specified by:
      duplicate in class AbstractValue
      Returns:
      A deep clone.