Interface Value

    • Method Detail

      • isNull

        static boolean isNull​(Value value)
      • notNull

        static boolean notNull​(Value value)
      • isValid

        static boolean isValid​(Object value)
      • compareTo

        static int compareTo​(Value value1,
                             Value value2)
        Compare two Value objects, which may or may not be null.
        Parameters:
        value1 - the first value object, may be null
        value2 - the second value object, which may be null
        Returns:
        a negative integer if the first value is less than the second, zero if the values are equivalent (including if both are null), or a positive integer if the first value is greater than the second
      • create

        static Value create​(boolean value)
      • create

        static Value create​(int value)
      • create

        static Value create​(long value)
      • create

        static Value create​(float value)
      • create

        static Value create​(double value)
      • create

        static Value create​(Long value)
      • create

        static Value create​(byte[] value)
      • nullValue

        static Value nullValue()
      • asObject

        Object asObject()
        Get the raw value.
        Returns:
        the raw value; may be null
      • asLong

        Long asLong()
      • asFloat

        Float asFloat()
      • asArray

        Array asArray()
      • asBytes

        byte[] asBytes()
      • isNull

        boolean isNull()
      • isNotNull

        default boolean isNotNull()
      • isString

        boolean isString()
      • isInteger

        boolean isInteger()
      • isLong

        boolean isLong()
      • isBoolean

        boolean isBoolean()
      • isNumber

        boolean isNumber()
      • isBigInteger

        boolean isBigInteger()
      • isBigDecimal

        boolean isBigDecimal()
      • isFloat

        boolean isFloat()
      • isDouble

        boolean isDouble()
      • isDocument

        boolean isDocument()
      • isArray

        boolean isArray()
      • isBinary

        boolean isBinary()
      • convert

        Value convert()
        Get a Value representation that will convert attempt to convert values.
        Returns:
        a value that can convert actual values to the requested format
      • clone

        Value clone()
        Obtain a clone of this value.
        Returns:
        the clone of this value; never null, but possibly the same instance if the underlying value is immutable and not a document or array
      • ifDocument

        default boolean ifDocument​(Consumer<Document> consumer)
        If a value is a document, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a document
        Returns:
        true if the block was called, or false otherwise
      • ifArray

        default boolean ifArray​(Consumer<Array> consumer)
        If a value is an array, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is an array
        Returns:
        true if the block was called, or false otherwise
      • ifString

        default boolean ifString​(Consumer<String> consumer)
        If a value is a string, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a string
        Returns:
        true if the block was called, or false otherwise
      • ifBoolean

        default boolean ifBoolean​(Consumer<Boolean> consumer)
        If a value is a boolean value, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a boolean
        Returns:
        true if the block was called, or false otherwise
      • ifBinary

        default boolean ifBinary​(Consumer<byte[]> consumer)
        If a value is a byte array, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a byte array
        Returns:
        true if the block was called, or false otherwise
      • ifInteger

        default boolean ifInteger​(IntConsumer consumer)
        If a value is an integer, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is an integer
        Returns:
        true if the block was called, or false otherwise
      • ifLong

        default boolean ifLong​(LongConsumer consumer)
        If a value is a long, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a long
        Returns:
        true if the block was called, or false otherwise
      • ifFloat

        default boolean ifFloat​(DoubleConsumer consumer)
        If a value is a float, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a float
        Returns:
        true if the block was called, or false otherwise
      • ifDouble

        default boolean ifDouble​(DoubleConsumer consumer)
        If a value is a double, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a double
        Returns:
        true if the block was called, or false otherwise
      • ifBigInteger

        default boolean ifBigInteger​(Consumer<BigInteger> consumer)
        If a value is a variable-sized integer, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a big integer
        Returns:
        true if the block was called, or false otherwise
      • ifBigDecimal

        default boolean ifBigDecimal​(Consumer<BigDecimal> consumer)
        If a value is a variable-sized decimal, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a big decimal
        Returns:
        true if the block was called, or false otherwise
      • ifNull

        default boolean ifNull​(Value.NullHandler consumer)
        If a value is a variable-sized integer, invoke the specified consumer with the value, otherwise do nothing.
        Parameters:
        consumer - block to be executed if the value is a big integer
        Returns:
        true if the block was called, or false otherwise