Package org.h2.value

Class ValueTime

All Implemented Interfaces:
HasSQL, Typed

public final class ValueTime extends Value
Implementation of the TIME data type.
  • Field Details

    • DEFAULT_PRECISION

      public static final int DEFAULT_PRECISION
      The default precision and display size of the textual representation of a time. Example: 10:00:00
      See Also:
    • MAXIMUM_PRECISION

      public static final int MAXIMUM_PRECISION
      The maximum precision and display size of the textual representation of a time. Example: 10:00:00.123456789
      See Also:
    • DEFAULT_SCALE

      public static final int DEFAULT_SCALE
      The default scale for time.
      See Also:
    • MAXIMUM_SCALE

      public static final int MAXIMUM_SCALE
      The maximum scale for time.
      See Also:
    • nanos

      private final long nanos
      Nanoseconds since midnight
  • Constructor Details

    • ValueTime

      private ValueTime(long nanos)
      Parameters:
      nanos - nanoseconds since midnight
  • Method Details

    • fromNanos

      public static ValueTime fromNanos(long nanos)
      Get or create a time value.
      Parameters:
      nanos - the nanoseconds since midnight
      Returns:
      the value
    • parse

      public static ValueTime parse(String s)
      Parse a string to a ValueTime.
      Parameters:
      s - the string to parse
      Returns:
      the time
    • getNanos

      public long getNanos()
      Returns:
      nanoseconds since midnight
    • getType

      public TypeInfo getType()
      Description copied from interface: Typed
      Returns the data type.
      Specified by:
      getType in interface Typed
      Specified by:
      getType in class Value
      Returns:
      the data type
    • getValueType

      public int getValueType()
      Description copied from class: Value
      Get the value type.
      Specified by:
      getValueType in class Value
      Returns:
      the value type
    • getString

      public String getString()
      Description copied from class: Value
      Get the value as a string.
      Specified by:
      getString in class Value
      Returns:
      the string
    • getSQL

      public StringBuilder getSQL(StringBuilder builder, int sqlFlags)
      Description copied from interface: HasSQL
      Appends the SQL statement of this object to the specified builder.
      Parameters:
      builder - string builder
      sqlFlags - formatting flags
      Returns:
      the specified string builder
    • compareTypeSafe

      public int compareTypeSafe(Value o, CompareMode mode, CastDataProvider provider)
      Description copied from class: Value
      Compare this value against another value given that the values are of the same data type.
      Specified by:
      compareTypeSafe in class Value
      Parameters:
      o - the other value
      mode - the compare mode
      provider - the cast information provider
      Returns:
      0 if both values are equal, -1 if the other value is smaller, and 1 otherwise
    • equals

      public boolean equals(Object other)
      Description copied from class: Value
      Check if the two values have the same hash code. No data conversion is made; this method returns false if the other object is not of the same class. For some values, compareTo may return 0 even if equals return false. Example: ValueDecimal 0.0 and 0.00.
      Specified by:
      equals in class Value
      Parameters:
      other - the other value
      Returns:
      true if they are equal
    • hashCode

      public int hashCode()
      Specified by:
      hashCode in class Value
    • add

      public Value add(Value v)
      Description copied from class: Value
      Add a value and return the result.
      Overrides:
      add in class Value
      Parameters:
      v - the value to add
      Returns:
      the result
    • subtract

      public Value subtract(Value v)
      Description copied from class: Value
      Subtract a value and return the result.
      Overrides:
      subtract in class Value
      Parameters:
      v - the value to subtract
      Returns:
      the result
    • multiply

      public Value multiply(Value v)
      Description copied from class: Value
      Multiply with a value and return the result.
      Overrides:
      multiply in class Value
      Parameters:
      v - the value to multiply with
      Returns:
      the result
    • divide

      public Value divide(Value v, TypeInfo quotientType)
      Description copied from class: Value
      Divide by a value and return the result.
      Overrides:
      divide in class Value
      Parameters:
      v - the divisor
      quotientType - the type of quotient (used only to read precision and scale when applicable)
      Returns:
      the result