Package org.firebirdsql.gds.ng.tz
Class TimeZoneDatatypeCoder
- java.lang.Object
-
- org.firebirdsql.gds.ng.tz.TimeZoneDatatypeCoder
-
public class TimeZoneDatatypeCoder extends java.lang.Object
Datatype coder forTIME WITH TIME ZONE
andTIMESTAMP WITH TIME ZONE
.As this uses Java 8 and higher types, this is not part of datatype coder itself.
- Since:
- 4.0
- Author:
- Mark Rotteveel
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
TimeZoneDatatypeCoder.TimeZoneCodec
Simpler API for encoding or decoding offset date times.
-
Constructor Summary
Constructors Constructor Description TimeZoneDatatypeCoder(DatatypeCoder datatypeCoder)
Initializes a time zone datatype coder.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description java.time.OffsetDateTime
decodeExTimestampTz(byte[] exTimestampTzBytes)
java.time.OffsetTime
decodeExTimeTz(byte[] exTimeTzBytes)
java.time.OffsetDateTime
decodeTimestampTz(byte[] timestampTzBytes)
java.time.OffsetTime
decodeTimeTz(byte[] timeTzBytes)
byte[]
encodeExTimestampTz(java.time.OffsetDateTime offsetDateTime)
byte[]
encodeExTimeTz(java.time.OffsetTime offsetTime)
byte[]
encodeTimestampTz(java.time.OffsetDateTime offsetDateTime)
byte[]
encodeTimeTz(java.time.OffsetTime offsetTime)
static TimeZoneDatatypeCoder
getInstanceFor(DatatypeCoder datatypeCoder)
Gets or creates an instance of time zone datatype coder for a datatype coder.TimeZoneDatatypeCoder.TimeZoneCodec
getTimeZoneCodecFor(FieldDescriptor fieldDescriptor)
Obtains theTimeZoneDatatypeCoder.TimeZoneCodec
implementation for the field described byfieldDescriptor
.
-
-
-
Constructor Detail
-
TimeZoneDatatypeCoder
public TimeZoneDatatypeCoder(DatatypeCoder datatypeCoder)
Initializes a time zone datatype coder.- Parameters:
datatypeCoder
- datatype coder
-
-
Method Detail
-
getTimeZoneCodecFor
public TimeZoneDatatypeCoder.TimeZoneCodec getTimeZoneCodecFor(FieldDescriptor fieldDescriptor) throws java.sql.SQLException
Obtains theTimeZoneDatatypeCoder.TimeZoneCodec
implementation for the field described byfieldDescriptor
.- Parameters:
fieldDescriptor
- Field descriptor- Returns:
- Suitable instance of
TimeZoneCodec
- Throws:
java.sql.SQLException
- WhenfieldDescriptor
is not a TIME/TIMESTAMP WITH TIME ZONE type field
-
decodeTimestampTz
public java.time.OffsetDateTime decodeTimestampTz(byte[] timestampTzBytes)
-
decodeExTimestampTz
public java.time.OffsetDateTime decodeExTimestampTz(byte[] exTimestampTzBytes)
-
encodeTimestampTz
public byte[] encodeTimestampTz(java.time.OffsetDateTime offsetDateTime)
-
encodeExTimestampTz
public byte[] encodeExTimestampTz(java.time.OffsetDateTime offsetDateTime)
-
decodeTimeTz
public java.time.OffsetTime decodeTimeTz(byte[] timeTzBytes)
-
decodeExTimeTz
public java.time.OffsetTime decodeExTimeTz(byte[] exTimeTzBytes)
-
encodeTimeTz
public byte[] encodeTimeTz(java.time.OffsetTime offsetTime)
-
encodeExTimeTz
public byte[] encodeExTimeTz(java.time.OffsetTime offsetTime)
-
getInstanceFor
public static TimeZoneDatatypeCoder getInstanceFor(DatatypeCoder datatypeCoder)
Gets or creates an instance of time zone datatype coder for a datatype coder.- Parameters:
datatypeCoder
- Datatype coder instance- Returns:
- Cached or new instance of
TimeZoneDatatypeCoder
-
-