Package org.h2.value
Class ValueTimeTimeZone
Implementation of the TIME WITH TIME ZONE data type.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
The default precision and display size of the textual representation of a time.static final int
The maximum precision and display size of the textual representation of a time.private final long
Nanoseconds since midnightprivate final int
Time zone offset from UTC in seconds, range of -18 hours to +18 hours.Fields inherited from class org.h2.value.Value
ARRAY, ASSIGN_TO, BIGINT, BINARY, BLOB, BOOLEAN, CAST_TO, CHAR, CLOB, CONVERT_TO, DATE, DECFLOAT, DOUBLE, EMPTY_VALUES, ENUM, GEOMETRY, GROUP_BINARY_STRING, GROUP_BOOLEAN, GROUP_CHARACTER_STRING, GROUP_COLLECTION, GROUP_DATETIME, GROUP_INTERVAL_DT, GROUP_INTERVAL_YM, GROUP_NULL, GROUP_NUMERIC, GROUP_OTHER, GROUPS, INTEGER, INTERVAL_DAY, INTERVAL_DAY_TO_HOUR, INTERVAL_DAY_TO_MINUTE, INTERVAL_DAY_TO_SECOND, INTERVAL_HOUR, INTERVAL_HOUR_TO_MINUTE, INTERVAL_HOUR_TO_SECOND, INTERVAL_MINUTE, INTERVAL_MINUTE_TO_SECOND, INTERVAL_MONTH, INTERVAL_SECOND, INTERVAL_YEAR, INTERVAL_YEAR_TO_MONTH, JAVA_OBJECT, JSON, MAX_LONG_DECIMAL, MIN_LONG_DECIMAL, NULL, NUMERIC, REAL, ROW, SMALLINT, TIME, TIME_TZ, TIMESTAMP, TIMESTAMP_TZ, TINYINT, TYPE_COUNT, UNKNOWN, UUID, VARBINARY, VARCHAR, VARCHAR_IGNORECASE
Fields inherited from interface org.h2.util.HasSQL
ADD_PLAN_INFORMATION, DEFAULT_SQL_FLAGS, NO_CASTS, QUOTE_ONLY_WHEN_REQUIRED, REPLACE_LOBS_FOR_TRACE, TRACE_SQL_FLAGS
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
compareTypeSafe
(Value o, CompareMode mode, CastDataProvider provider) Compare this value against another value given that the values are of the same data type.boolean
Check if the two values have the same hash code.static ValueTimeTimeZone
fromNanos
(long nanos, int timeZoneOffsetSeconds) Get or create a time value.int
Get the memory used by this object.long
getNanos()
getSQL
(StringBuilder builder, int sqlFlags) Appends the SQL statement of this object to the specified builder.Get the value as a string.int
The time zone offset in seconds.getType()
Returns the data type.int
Get the value type.int
hashCode()
static ValueTimeTimeZone
Parse a string to a ValueTime.private StringBuilder
toString
(StringBuilder builder) Methods inherited from class org.h2.value.Value
add, cache, castTo, charLength, clearCache, compareTo, compareWithNull, containsNull, convertForAssignTo, convertTo, convertTo, convertTo, convertTo, convertTo, convertToAnyArray, convertToAnyRow, convertToBigint, convertToBoolean, convertToChar, convertToDate, convertToDouble, convertToEnum, convertToGeometry, convertToInt, convertToInt, convertToJavaObject, convertToReal, convertToSmallint, convertToTinyint, convertToUuid, divide, getBigDecimal, getBoolean, getByte, getBytes, getBytesNoCopy, getDataConversionError, getDataConversionError, getDouble, getFloat, getHigherOrder, getHigherOrderKnown, getInputStream, getInputStream, getInt, getLong, getReader, getReader, getShort, getSignum, getTypeName, getUnsupportedExceptionForOperation, getValueTooLongException, isFalse, isTrue, modulus, multiply, negate, octetLength, rangeCheck, subtract, toString
Methods inherited from class org.h2.value.VersionedValue
getCommittedValue, getCurrentValue, getOperationId, isCommitted
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.h2.util.HasSQL
getSQL, getTraceSQL
-
Field Details
-
DEFAULT_PRECISION
public static final int DEFAULT_PRECISIONThe default precision and display size of the textual representation of a time. Example: 10:00:00+10:00- See Also:
-
MAXIMUM_PRECISION
public static final int MAXIMUM_PRECISIONThe maximum precision and display size of the textual representation of a time. Example: 10:00:00.123456789+10:00- See Also:
-
nanos
private final long nanosNanoseconds since midnight -
timeZoneOffsetSeconds
private final int timeZoneOffsetSecondsTime zone offset from UTC in seconds, range of -18 hours to +18 hours. This range is compatible with OffsetTime from JSR-310.
-
-
Constructor Details
-
ValueTimeTimeZone
private ValueTimeTimeZone(long nanos, int timeZoneOffsetSeconds) - Parameters:
nanos
- nanoseconds since midnight
-
-
Method Details
-
fromNanos
Get or create a time value.- Parameters:
nanos
- the nanoseconds since midnighttimeZoneOffsetSeconds
- the timezone offset in seconds- Returns:
- the value
-
parse
Parse a string to a ValueTime.- Parameters:
s
- the string to parse- Returns:
- the time
-
getNanos
public long getNanos()- Returns:
- nanoseconds since midnight
-
getTimeZoneOffsetSeconds
public int getTimeZoneOffsetSeconds()The time zone offset in seconds.- Returns:
- the offset
-
getType
Description copied from interface:Typed
Returns the data type. -
getValueType
public int getValueType()Description copied from class:Value
Get the value type.- Specified by:
getValueType
in classValue
- Returns:
- the value type
-
getMemory
public int getMemory()Description copied from class:Value
Get the memory used by this object. -
getString
Description copied from class:Value
Get the value as a string. -
getSQL
Description copied from interface:HasSQL
Appends the SQL statement of this object to the specified builder.- Parameters:
builder
- string buildersqlFlags
- formatting flags- Returns:
- the specified string builder
-
toString
-
compareTypeSafe
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 classValue
- Parameters:
o
- the other valuemode
- the compare modeprovider
- the cast information provider- Returns:
- 0 if both values are equal, -1 if the other value is smaller, and 1 otherwise
-
equals
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. -
hashCode
public int hashCode()
-